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注入实现代码
Feb 19 PHP
解析关于java,php以及html的所有文件编码与乱码的处理方法汇总
Jun 24 PHP
zf框架的数据库追踪器使用示例
Mar 13 PHP
ThinkPHP实现带验证码的文件上传功能实例
Nov 01 PHP
Yii实现多按钮保存与提交的方法
Dec 03 PHP
php比较两个字符串长度的方法
Jul 13 PHP
Yii2前后台分离及migrate使用(七)
May 04 PHP
Yii2基于Ajax自动获取表单数据的方法
Aug 10 PHP
PHP简单判断手机设备的方法
Aug 23 PHP
PHP编写daemon process 实例详解
Nov 13 PHP
YII框架中使用memcache的方法详解
Aug 02 PHP
laravel框架使用极光推送消息操作示例
Feb 15 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 数组排序方法总结 推荐收藏
2010/06/30 PHP
解决FastCGI 进程超过了配置的活动超时时限的问题
2013/07/03 PHP
调试PHP程序的多种方法介绍
2014/11/06 PHP
实例讲解PHP设计模式编程中的简单工厂模式
2016/02/29 PHP
ThinkPHP5+UEditor图片上传到阿里云对象存储OSS功能示例
2019/08/05 PHP
优化网页之快速的呈现我们的网页
2007/06/29 Javascript
eval与window.eval的差别分析
2011/03/17 Javascript
Jquery如何实现点击时高亮显示代码
2014/01/22 Javascript
基于jquery实现的文字向上跑动类似跑马灯的效果
2014/06/17 Javascript
Bootstrap的图片轮播示例代码
2015/08/31 Javascript
jQuery实现的经典滑动门效果
2015/09/22 Javascript
jQuery实现的仿百度分页足迹效果代码
2015/10/30 Javascript
JSP基于Bootstrap分页显示实例解析
2016/06/12 Javascript
详解React开发中使用require.ensure()按需加载ES6组件
2017/05/12 Javascript
webpack+vue中使用别名路径引用静态图片地址
2017/11/20 Javascript
vue+elementui 对话框取消 表单验证重置示例
2019/10/29 Javascript
js实现飞机大战小游戏
2020/08/26 Javascript
如何利用JS将手机号中间四位变成*号
2020/09/29 Javascript
Python函数式编程指南(三):迭代器详解
2015/06/24 Python
python 时间戳与格式化时间的转化实现代码
2016/03/23 Python
Python 爬虫学习笔记之单线程爬虫
2016/09/21 Python
python实现发送邮件及附件功能
2021/03/02 Python
Python实现图片转字符画的示例代码
2017/08/21 Python
python实现外卖信息管理系统
2018/01/11 Python
Python3模拟登录操作实例分析
2019/03/12 Python
Django 迁移、操作数据库的方法
2019/08/02 Python
python自动化测试无法启动谷歌浏览器问题
2019/10/10 Python
Python求正态分布曲线下面积实例
2019/11/20 Python
css3实现文字首尾衔接跑马灯的示例代码
2020/10/16 HTML / CSS
使用索引有什么好处
2016/07/27 面试题
搞笑获奖感言
2014/01/30 职场文书
财务人员担保书
2014/05/13 职场文书
导游词之镜泊湖
2019/12/09 职场文书
安装pytorch时报sslerror错误的解决方案
2021/05/17 Python
python 如何在list中找Topk的数值和索引
2021/05/20 Python
CSS3实现指纹特效代码
2022/03/17 HTML / CSS