下面来看一个php按照权重随机排序数据的例子,希望这个例子能对各位带来一些例子,有需要的进入看看吧.
例子,代码如下:
- <?php
- /**
- * @param array $weight 权重 例如array('a'=>10,'b'=>20,'c'=>50)
- * @return string key 键名
- */
- function roll($weight = array()) {
- $roll = rand ( 1, array_sum ( $weight ) );
- $_tmpW = 0; //开源软件:Vevb.com
- $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('a'=>10,'b'=>20,'c'=>50));
- echo $row;
- ?>
新闻热点
疑难解答