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

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

WBOY
WBOY원래의
2016-05-26 08:19:581232검색

下面来看一个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으로 문의하세요.