PHP大转盘中奖概率算法与示例代码
发布:smiling 来源: PHP粉丝网 添加日期:2015-04-09 15:33:43 浏览: 评论:0
大转盘是最近很多线上网动中一个比较有意思的东西了,下面我们来看看这个大转盘中奖概率算法与例子,希望对各位有帮助,近日工作中有一项目,APP客户端有大转盘抽奖,具体如何抽奖当然在我们服务端实现洛,下面和大家简单分享一下实现代码:
- header("Content-type: text/html; charset=utf-8");
- $prize_arr = array(
- '0' => array('id'=>1,'prize'=>'平板电脑','v'=>1),
- '1' => array('id'=>2,'prize'=>'数码相机','v'=>5),
- '2' => array('id'=>3,'prize'=>'音箱设备','v'=>10),
- '3' => array('id'=>4,'prize'=>'4G优盘','v'=>12),
- '4' => array('id'=>5,'prize'=>'10Q币','v'=>22),
- '5' => array('id'=>6,'prize'=>'下次没准就能中哦','v'=>50),
- ); //开源软件:phpfensi.com
- $actor = 100;
- foreach ($prize_arr as $v) {
- $arr[$v['id']] = $v['v'];
- }
- foreach ($arr as &$v) {
- $v = $v*$actor;
- }
- asort($arr);
- $sum = array_sum($arr); //总概率
- $rand = mt_rand(1,$sum);
- $result = ''; //中奖产品id
- foreach ($arr as $k => $x)
- {
- if($rand <= $x)
- {
- $result = $k;
- break;
- }
- else
- {
- $rand -= $x;
- }
- }
- $res['yes'] = $prize_arr[$result-1]['prize']; //中奖项
- print_r($res);
Tags: PHP大转盘 PHP中奖概率
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)