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之第七天
Oct 09 PHP
调整优化您的LAMP应用程序的5种简单方法
Jun 26 PHP
PHP读取txt文件的内容并赋值给数组的代码
Nov 03 PHP
PHP可逆加密/解密函数分享
Sep 25 PHP
解析yii数据库的增删查改
Jun 20 PHP
php脚本运行时的超时机制详解
Feb 17 PHP
Symfony核心类概述
Mar 17 PHP
ThinkPHP模板循环输出Volist标签用法实例详解
Mar 23 PHP
PHP文字转图片功能原理与实现方法分析
Aug 31 PHP
PHP操作MySQL中BLOB字段的方法示例【存储文本与图片】
Sep 15 PHP
TP(thinkPHP)框架多层控制器和多级控制器的使用示例
Jun 13 PHP
Linux下源码包安装Swoole及基本使用操作图文详解
Apr 02 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
How do I change MySQL timezone?
2008/03/26 PHP
Windows中使用计划任务自动执行PHP程序实例
2014/05/09 PHP
phpinfo() 中 Local Value(局部变量)Master Value(主变量) 的区别
2016/02/03 PHP
PHP入门教程之字符串处理技巧总结(转换,过滤,解析,查找,截取,替换等)
2016/09/11 PHP
jQuery 位置插件
2008/12/25 Javascript
基于jquery自定义的漂亮单选按钮RadioButton
2013/11/19 Javascript
javascript 回到顶部效果的实现代码
2014/02/17 Javascript
jquery日历控件实现方法分享
2014/03/07 Javascript
js实现使用鼠标拖拽切换图片的方法
2015/05/04 Javascript
纯javascript模仿微信打飞机小游戏
2015/08/20 Javascript
使用JavaScript实现ajax的实例代码
2016/05/11 Javascript
BootStrap学习系列之Bootstrap Typeahead 组件实现百度下拉效果(续)
2016/07/07 Javascript
详解Javascript获取缓存和清除缓存API
2017/05/25 Javascript
JS内部事件机制之单线程原理
2018/07/02 Javascript
Vue+element-ui 实现表格的分页功能示例
2018/08/18 Javascript
vue 刷新之后 嵌套路由不变 重新渲染页面的方法
2018/09/13 Javascript
JavaScript错误处理操作实例详解
2019/01/04 Javascript
JS绘图Flot应用图形绘制异常解决方案
2020/10/16 Javascript
python基础教程之获取本机ip数据包示例
2014/02/10 Python
利用Tkinter和matplotlib两种方式画饼状图的实例
2017/11/06 Python
Python中函数参数调用方式分析
2018/08/09 Python
python将pandas datarame保存为txt文件的实例
2019/02/12 Python
Python字符串的常见操作实例小结
2019/04/08 Python
在Pycharm中调试Django项目程序的操作方法
2019/07/17 Python
python网络编程之多线程同时接受和发送
2019/09/03 Python
Python面向对象实现方法总结
2020/08/12 Python
Numpy(Pandas)删除全为零的列的方法
2020/09/11 Python
CSS Grid布局教程之什么是网格布局
2014/12/30 HTML / CSS
意大利奢侈品购物网站:Giglio
2018/01/05 全球购物
晚会邀请函范文
2014/01/24 职场文书
派出所所长先进事迹
2014/05/19 职场文书
生日宴会策划方案
2014/06/03 职场文书
企业爱岗敬业演讲稿
2014/09/04 职场文书
2015年保洁工作总结范文
2015/04/28 职场文书
2015年语文教师工作总结
2015/05/25 职场文书
python实现A*寻路算法
2021/06/13 Python