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 相关文章推荐
dede3.1分页文字采集过滤规则详说(图文教程)续二
Apr 03 PHP
PHP 处理图片的类实现代码
Oct 23 PHP
PHP的5个安全措施小结
Jul 17 PHP
codeigniter教程之上传视频并使用ffmpeg转flv示例
Feb 13 PHP
PHP数字字符串左侧补0、字符串填充和自动补齐的几种方法
May 10 PHP
Thinkphp模板中截取字符串函数简介
Jun 17 PHP
从零开始学YII2框架(二)通过 Composer 安装扩展插件
Aug 20 PHP
PHP中执行cmd命令的方法
Oct 11 PHP
mac os快速切换多个PHP版本的方法
Mar 07 PHP
PHP实现RSA签名生成订单功能【支付宝示例】
Jun 06 PHP
PHP环形链表实现方法示例
Sep 15 PHP
yii2.0整合阿里云oss的示例代码
Sep 19 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
浅谈PHP调用Webservice思路及源码分享
2014/06/04 PHP
PHP在线调试执行的实现方法(附demo源码)
2016/04/28 PHP
Yii2实现ActiveForm ajax提交
2017/05/26 PHP
基于thinkphp6.0的success、error实现方法
2019/11/05 PHP
php将字符串转换为数组实例讲解
2020/05/05 PHP
jquery iframe操作详细解析
2013/11/20 Javascript
js 调用百度地图api并在地图上进行打点添加标注
2014/05/13 Javascript
JavaScript获取路径设计源码
2014/05/22 Javascript
微信小程序 教程之模块化
2016/10/17 Javascript
Angular和百度地图的结合实例代码
2016/10/19 Javascript
纯JS实现弹性导航条效果
2017/03/06 Javascript
Angular中的interceptors拦截器
2017/06/25 Javascript
微信小程序拍照和摄像功能实现方法示例
2019/02/01 Javascript
[47:31]完美世界DOTA2联赛PWL S3 INK ICE vs DLG 第一场 12.12
2020/12/16 DOTA
星球大战与Python之间的那些事
2016/01/07 Python
tensorflow入门之训练简单的神经网络方法
2018/02/26 Python
Python迭代器与生成器基本用法分析
2018/07/26 Python
python实现简单名片管理系统
2018/11/30 Python
python time.sleep()是睡眠线程还是进程
2019/07/09 Python
Python的互斥锁与信号量详解
2019/09/12 Python
python:动态路由的Flask程序代码
2019/11/22 Python
python3光学字符识别模块tesserocr与pytesseract的使用详解
2020/02/26 Python
django 装饰器 检测登录状态操作
2020/07/02 Python
CSS3对图片照片进行边缘模糊处理的实现
2018/08/08 HTML / CSS
html5新增的定时器requestAnimationFrame实现进度条功能
2018/12/13 HTML / CSS
HTML5是什么 HTML5是什么意思 HTML5简介
2012/10/26 HTML / CSS
美国最大的存储市场:SpareFoot
2018/07/23 全球购物
经济管理专业自荐信
2013/12/30 职场文书
村委会主任先进事迹
2014/01/15 职场文书
个人查摆剖析材料
2014/10/04 职场文书
坎儿井导游词
2015/02/09 职场文书
餐厅收银员岗位职责
2015/04/07 职场文书
党员干部廉洁自律承诺书
2015/04/28 职场文书
2015少先队大队辅导员工作总结
2015/07/24 职场文书
小学数学国培研修日志
2015/11/13 职场文书
JDK8中String的intern()方法实例详细解读
2022/09/23 Java/Android