中奖概率算法

7441 人参与 | 时间:2024年03月29日 07:10:45
内容
  $gailv_arr = array();
$gailv_arr[11] = 1;
$gailv_arr[2] = 1;
$gailv_arr[33] = 1;
$gailv_arr[44] = 1;
$gailv_arr[55] = 1;
$proSum = array_sum($gailv_arr);
if($proSum==0){
echo "没有奖品了";
exit();
}
arsort($gailv_arr);
//概率数组循环
$zhongjiang_id = 0;
foreach ($gailv_arr as $key => $vo) {
$randNum = mt_rand(1, $proSum);
if ($randNum <= $vo) {
$zhongjiang_id = $key;
break;
} else {
$proSum -= $vo;
}
}
echo $zhongjiang_id;