PHP中怎么实现一个大转盘抽奖算法-创新互联

本篇文章为大家展示了PHP中怎么实现一个大转盘抽奖算法,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

创新互联建站是一家集网站建设,紫云企业网站建设,紫云品牌网站建设,网站定制,紫云网站建设报价,网络营销,网络优化,紫云网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

流程:


1.拼装奖项数组;

2.计算概率;

3.返回中奖情况。

代码如下:中奖概率 ' v ' 可以在后台设置,传到此方法中,注意传整数

function get_gift(){  
        //拼装奖项数组
        // 奖项id,奖品,概率
        $prize_arr = array(   
          '0' => array('id'=>1,'prize'=>'平板电脑','v'=>0),   
          '1' => array('id'=>2,'prize'=>'数码相机','v'=>0),   
          '2' => array('id'=>3,'prize'=>'音箱设备','v'=>0),   
          '3' => array('id'=>4,'prize'=>'4G优盘','v'=>5),   
          '4' => array('id'=>5,'prize'=>'10Q币','v'=>0),   
          '5' => array('id'=>6,'prize'=>'空奖','v'=>5),   
        );   

        foreach ($prize_arr as $key => $val) {   
          $arr[$val['id']] = $val['v'];//概率数组           }    
        $rid = $this->get_rand($arr); //根据概率获取奖项id   
        $res['yes'] = $prize_arr[$rid-1]['prize']; //中奖项   
        unset($prize_arr[$rid-1]); //将中奖项从数组中剔除,剩下未中奖项   
        shuffle($prize_arr); //打乱数组顺序   
        for($i=0;$i $proCur) {   
        $randNum = mt_rand(1, $proSum);  //返回随机整数
         if ($randNum <= $proCur) {   
          $result = $key;   
          break;   
        } else {   
          $proSum -= $proCur;   
        }   
      }   
      unset ($proArr);   
      return $result;   
    }

上述内容就是PHP中怎么实现一个大转盘抽奖算法,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联行业资讯频道。


分享名称:PHP中怎么实现一个大转盘抽奖算法-创新互联
标题网址:http://azwzsj.com/article/ceggch.html