首页 > 开发 > PHP > 正文

php实现按照权重随机排序数据的方法

2024-05-04 23:29:59
字体:
来源:转载
供稿:网友
这篇文章主要介绍了php实现按照权重随机排序数据的方法,是php数据排序中一个比较典型的应用技巧,需要的朋友可以参考下
 

本文实例讲述了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;   
 $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;   
?>

 

希望本文所述对大家的php程序设计有所帮助。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表