当前位置: 首页 > 后端技术 > PHP

转盘开奖概率中的奖品计算

时间:2023-03-29 19:08:11 PHP

//key:奖品key,value:中奖概率或份数$array=['key1'=>20,'key2'=>40,'key3'=>30,'key5'=>10];//return:返回获胜的key$fun=function($array){asort($array);//按概率排序,分布范围,0-10-20-30-40;$randNum=mt_rand(1,array_sum($array));//随机数//print_r($randNum.PHP_EOL);//区间判断$start=0;foreach($arrayas$key=>$item){//构造区间数:0-10-20-30-40;$开始+=$项目;//print_r('开始:'.$start.'key:'.$key.PHP_EOL);如果($randNum<=$start){返回$key;}}};var_dump($fun($array));