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 操作文件的一些FAQ总结
Feb 12 PHP
php 什么是PEAR?(第三篇)
Mar 19 PHP
phpmyadmin 常用选项设置详解版
Mar 07 PHP
php header示例代码(推荐)
Sep 08 PHP
fleaphp crud操作之find函数的使用方法
Apr 23 PHP
php 批量添加多行文本框textarea一行一个
Jun 03 PHP
php中$_GET与$_POST过滤sql注入的方法
Nov 03 PHP
PHP数组编码gbk与utf8互相转换的两种方法
Sep 01 PHP
PHP7匿名类用法分析
Sep 26 PHP
php修改数组键名的方法示例
Apr 15 PHP
深入理解Yii2.0乐观锁与悲观锁的原理与使用
Jul 26 PHP
php TP5框架生成二维码链接
Apr 01 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高级编程-函数-郑阿奇
2011/07/04 PHP
fgetcvs在linux的问题
2012/01/15 PHP
关于尾递归的使用详解
2013/05/02 PHP
php读取excel文件的简单实例
2013/08/26 PHP
php集成套件服务器xampp安装使用教程(适合第一次玩PHP的新手)
2015/06/03 PHP
注释PHP和html混合代码的小技巧(分享)
2016/11/03 PHP
使用JS操作页面表格,元素的一些技巧
2007/02/02 Javascript
可以显示单图片,多图片ajax请求的ThickBox3.1类下载
2007/12/23 Javascript
JavaScript 入门基础知识 想学习js的朋友可以参考下
2009/12/26 Javascript
javascript的原生方法获取数组中的最大(最小)值
2012/12/19 Javascript
JavaScript和CSS通过expression实现Table居中显示
2013/06/28 Javascript
jQuery 实时保存页面动态添加的数据的示例
2017/08/14 jQuery
layui获取选中行数据的实例讲解
2018/08/19 Javascript
Vue图片浏览组件v-viewer用法分析【支持旋转、缩放、翻转等操作】
2019/11/04 Javascript
bootstrapValidator表单校验、更改状态、新增、移除校验字段的实例代码
2020/05/19 Javascript
[04:52]DOTA2亚洲邀请赛附加赛 TOP10精彩集锦
2015/01/29 DOTA
python with statement 进行文件操作指南
2014/08/22 Python
python采集百度百科的方法
2015/06/05 Python
Python实现高效求解素数代码实例
2015/06/30 Python
python中安装模块包版本冲突问题的解决
2017/05/02 Python
Python中反射和描述器总结
2018/09/23 Python
python3.7 使用pymssql往sqlserver插入数据的方法
2019/07/08 Python
Django REST Framework序列化外键获取外键的值方法
2019/07/26 Python
django框架面向对象ORM模型继承用法实例分析
2019/07/29 Python
Python使用QQ邮箱发送邮件报错smtplib.SMTPAuthenticationError
2019/12/20 Python
如何搭建pytorch环境的方法步骤
2020/05/06 Python
Python Tkinter实例——模拟掷骰子
2020/10/24 Python
英国儿童家具专卖店:GLTC
2016/09/24 全球购物
俄罗斯建筑和装饰材料在线商店:Stroilandia
2020/07/25 全球购物
装饰施工员岗位职责
2015/04/11 职场文书
农村结婚典礼主持词
2015/06/29 职场文书
大学生暑期实践报告
2015/07/13 职场文书
总经理年会致辞
2015/07/29 职场文书
离婚财产分割协议书
2015/08/11 职场文书
2016新教师岗前培训心得体会
2016/01/08 职场文书
用Python将库打包发布到pypi
2021/04/13 Python