转盘 抽奖 概率中奖项计算

曾经的少年 -
转盘 抽奖 概率中奖项计算
//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 ($array as $key => $item) {
        //构造区间数:0-10-20-30-40;
        $start += $item;
        //print_r('start:' . $start . ' key:' . $key . PHP_EOL);
        if ($randNum <= $start) {
            return $key;
        }
    }
};
var_dump($fun($array));
特别申明:本文内容来源网络,版权归原作者所有,如有侵权请立即与我们联系(cy198701067573@163.com),我们将及时处理。

php介绍

PHP即“超文本预处理器”,是一种通用开源脚本语言。PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言。PHP独特的语法混合了C、Java、Perl以及 PHP 自创的语法。利于学习,使用广泛,主要适用于Web开发领域。

Tags 标签

概率php抽奖算法

扩展阅读

加个好友,技术交流

1628738909466805.jpg