This article mainly introduces PHP programming to implement the calculation of lottery probability algorithm, and analyzes the operation skills related to PHP random number operation in the form of complete examples. Friends who need it can refer to it. I hope it can help everyone.
<?php //计算抽奖的概率 function get_rand($proArr) { $result = ''; $proSum = array_sum($proArr); foreach ($proArr as $key => $proCur) { $randNum = mt_rand(1, $proSum); if ($randNum <= $proCur) { $result = $key; break; } else { $proSum -= $proCur; } } unset ($proArr); return $result; } $prize_arr = array( '0' => array('id'=>1,'prize'=>'家电','v'=>2), '1' => array('id'=>2,'prize'=>'数码相机','v'=>5), '2' => array('id'=>3,'prize'=>'iPad','v'=>13), '3' => array('id'=>4,'prize'=>'LED显示器','v'=>15), '4' => array('id'=>5,'prize'=>'U盘','v'=>25), '5' => array('id'=>6,'prize'=>'键盘','v'=>30), '6' => array('id'=>7,'prize'=>'鼠标垫','v'=>10), ); foreach ($prize_arr as $key => $val) { $arr[$val['id']] = $val['v']; } $rid = get_rand($arr); $res['yes'] = $prize_arr[$rid-1]['prize']; unset($prize_arr[$rid-1]); shuffle($prize_arr); $prize_arrcount = count($prize_arr); for($i=0;$i<$prize_arrcount;$i++){ $pr[] = $prize_arr[$i]['prize']; } $res['no'] = $pr; //抽奖结果 $ro = $res['yes']; print_r($ro); ?>
Run results:
##
iPad
8 recommended courses on lottery probability
Scratch card, big turntable php lottery probability algorithm
php lottery probability algorithm
The above is the detailed content of PHP implements lottery probability algorithm code. For more information, please follow other related articles on the PHP Chinese website!