PHP大转盘中奖概率算法实例


Posted in PHP onOctober 21, 2014

本文实例讲述了PHP大转盘中奖概率算法的实现方法,分享给大家供大家参考。具体如下:

大转盘是最近很多线上网动中一个比较有意思的东西了,下面我们就来看看这个大转盘中奖概率算法与例子,希望对各位有所帮助。

这是一个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),

);

 

$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);

希望本文所述对大家的PHP程序设计有所帮助。

PHP 相关文章推荐
用PHP函数解决SQL injection
Dec 09 PHP
php异常处理技术,顶级异常处理器
Jun 13 PHP
强烈声明: 不要使用(include/require)_once
Jun 06 PHP
php json与xml序列化/反序列化
Oct 28 PHP
php阻止页面后退的方法分享
Feb 17 PHP
php目录操作实例代码
Feb 21 PHP
php实例分享之二维数组排序
May 15 PHP
ThinkPHP令牌验证实例
Jun 18 PHP
WordPress中调试缩略图的相关PHP函数使用解析
Jan 07 PHP
详谈PHP程序Laravel 5框架的优化技巧
Jul 18 PHP
php常用的工具开发整理
Sep 26 PHP
Laravel框架之解决前端显示图片问题
Oct 24 PHP
PHP与MYSQL中UTF8编码的中文排序实例
Oct 21 #PHP
php cookie中点号(句号)自动转为下划线问题
Oct 21 #PHP
微信公众平台网页授权获取用户基本信息中授权回调域名设置的变动
Oct 21 #PHP
php时间戳格式化显示友好的时间函数分享
Oct 21 #PHP
ThinkPHP整合百度Ueditor图文教程
Oct 21 #PHP
浅谈PHP正则表达式中修饰符/i, /is, /s, /isU
Oct 21 #PHP
php读取目录及子目录下所有文件名的方法
Oct 20 #PHP
You might like
SSI指令
2006/11/25 PHP
php cout&amp;lt;&amp;lt;的一点看法
2010/01/24 PHP
php中通过正则表达式下载内容中的远程图片的函数代码
2012/01/10 PHP
PHP 第二节 数据类型之数值型
2012/04/28 PHP
PHP 处理TXT文件(打开/关闭/检查/读取)
2013/05/13 PHP
php返回json数据函数实例
2014/10/09 PHP
php redis实现对200w用户的即时推送
2017/03/04 PHP
Yii2.0实现的批量更新及批量插入功能示例
2019/01/29 PHP
PHP使用mongoclient简单操作mongodb数据库示例
2019/02/08 PHP
使用IE的地址栏来辅助调试Web页脚本
2007/03/08 Javascript
js下获取div中的数据的原理分析
2010/04/07 Javascript
javascript oop开发滑动(slide)菜单控件
2010/08/25 Javascript
回车直接实现点击某按钮的效果即触发单击事件
2014/02/27 Javascript
jquery数组封装使用方法分享(jquery数组遍历)
2014/03/25 Javascript
如何调试异步加载页面里包含的js文件
2014/10/30 Javascript
自学实现angularjs依赖注入
2016/12/20 Javascript
Angular如何引入第三方库的方法详解
2017/07/13 Javascript
利用JS测试目标网站的打开响应速度
2017/12/01 Javascript
javaScript手机号码校验工具类PhoneUtils详解
2017/12/08 Javascript
微信小程序中使用自定义图标(阿里icon)的方法
2018/08/20 Javascript
解决axios会发送两次请求,有个OPTIONS请求的问题
2018/10/25 Javascript
nodejs对mongodb数据库的增加修删该查实例代码
2020/01/05 NodeJs
[01:01]2020完美高校联赛(秋)西安落幕
2021/03/11 DOTA
使用python删除nginx缓存文件示例(python文件操作)
2014/03/26 Python
RC4文件加密的python实现方法
2015/06/30 Python
python中模块查找的原理与方法详解
2017/08/11 Python
python做量化投资系列之比特币初始配置
2018/01/23 Python
Ooni英国官网:披萨烤箱
2020/05/31 全球购物
解释一下ArrayList Vector和LinkedList的实现和区别
2013/04/26 面试题
外贸公司实习自我鉴定
2013/09/24 职场文书
房地产员工找工作的自我评价
2013/11/15 职场文书
银行青年文明号事迹材料
2014/05/31 职场文书
工程部岗位职责范本
2015/04/11 职场文书
总结python多进程multiprocessing的相关知识
2021/06/29 Python
PHP使用QR Code生成二维码实例
2021/07/07 PHP
pandas时间序列之pd.to_datetime()的实现
2022/06/16 Python