Heim  >  Artikel  >  php教程  >  php按照权重随机排序数据的例子

php按照权重随机排序数据的例子

WBOY
WBOYOriginal
2016-05-26 08:19:581232Durchsuche

下面来看一个php按照权重随机排序数据的例子,希望这个例子能对各位带来一些例子,有需要的进入看看吧.

例子,代码如下:

<?php    
	/**   
	 * @param array $weight 权重  例如array(&#39;a&#39;=>10,&#39;b&#39;=>20,&#39;c&#39;=>50)   
	 * @return string key   键名    
	 */   
	function roll($weight = array()) {    
	 $roll = rand ( 1, array_sum ( $weight ) );    
	 $_tmpW = 0;     
	 $rollnum = 0;    
	  foreach ( $weight as $k => $v ) {    
	  $min = $_tmpW;    
	   $_tmpW += $v;    
	   $max = $_tmpW;    
	   if ($roll > $min && $roll <= $max) {    
	    $rollnum = $k;    
	    break;    
	   }    
	 }    
	  return $rollnum;    
	}    
	 
	$row=roll(array(&#39;a&#39;=>10,&#39;b&#39;=>20,&#39;c&#39;=>50));    
	echo $row;    
	


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn