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

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

WBOY
WBOY原创
2016-05-26 08:19:581241浏览

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


声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn