Maison >php教程 >php手册 >php按照权重随机排序数据的例子

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

WBOY
WBOYoriginal
2016-05-26 08:19:581258parcourir

下面来看一个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;    
	


Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn