基于PHP实现简单的随机抽奖小程序


Posted in PHP onJanuary 05, 2016

一个抽奖小程序,概论可控,也可某个奖品在前端显示,而程序中根本不可能获得!把所有的概率x10后相加起来,新数组中每项的值等于它前几个的和加上它本身。

然后随即生成一个0到最大数之间的一个数,通过循环查看它属于那个区间,返回该区间的key。

代码如下

$prize = array(
1 => 3.5, //3.5%机率
2 => 2.5, 
3 => 6, 
4 => 2, 
5 => 42, //42%机率
6 => 36, 
7 => 2, 
8 => 4, 
9 => 2
);
//最后确认相加等于100
$prizeList = array(
1 => array('小仙子'), 
2 => array('5Q币'), 
3 => array('38888游戏币'), 
4 => array('88888游戏币'), 
5 => array('谢谢参与!'), 
6 => array('欢迎下次再来!'), 
7 => array('10Q币'), 
8 => array('888银元宝(绑定)'), 
9 => array('随机高级坐骑(绑定)')
);
//unset($prize[7]); 直接把10Q这个奖品去掉
$times = 10;
$max = 0;
foreach ($prize as $k => $v)
{
$max = $v * $times + $max;
$row['v'] = $max;
$row['k'] = $k;
$prizeZone[] = $row;
}
$max--; //临界值
$rand = mt_rand(0, $max);
$zone = 1;
foreach ($prizeZone as $k => $v)
{
if ($rand >= $v['v'])
{
if ($rand >= $prizeZone[$k + 1]['v'])
{
continue;
}
else
{
$zone = $prizeZone[$k + 1]['k'];
break;
}
}
$zone = $v['k'];
break;
}
print_r($prizeList[$zone][0]);

基于php实现简单的抽奖小程序代码就给大家写这么多,不过都是核心代码,希望对大家学习工作有所帮助。

PHP 相关文章推荐
如何在PHP中进行身份认证
Oct 09 PHP
smarty实例教程
Nov 19 PHP
PHP 选项及相关信息函数库
Dec 04 PHP
PHP 文件上传进度条的两种实现方法的代码
Nov 25 PHP
Yii中使用PHPExcel导出Excel的方法
Dec 26 PHP
php实现图片局部打马赛克的方法
Feb 11 PHP
php实现字符串首字母大写和单词首字母大写的方法
Mar 14 PHP
Yii框架中jquery表单验证插件用法示例
Oct 18 PHP
详解Yaf框架PHPUnit集成测试方法
Dec 27 PHP
php微信开发之关键词回复功能
Jun 13 PHP
对php 判断http还是https,以及获得当前url的方法详解
Jan 15 PHP
详解PHP用mb_string处理windows中文字符
May 26 PHP
详解WordPress开发中的get_post与get_posts函数使用
Jan 04 #PHP
使用PHP实现微信摇一摇周边红包
Jan 04 #PHP
解析WordPress中的post_class与get_post_class函数
Jan 04 #PHP
WordPress开发中的get_post_custom()函数使用解析
Jan 04 #PHP
在WordPress中安装使用视频播放器插件Hana Flv Player
Jan 04 #PHP
详解WordPress中分类函数wp_list_categories的使用
Jan 04 #PHP
大家须知简单的php性能优化注意点
Jan 04 #PHP
You might like
一个PHP分页类的代码
2011/05/18 PHP
PHPMYADMIN导入数据最大为2M的解决方法
2012/04/23 PHP
详解WordPress开发中get_header()获取头部函数的用法
2016/01/08 PHP
php使用json-schema模块实现json校验示例
2019/09/28 PHP
探讨JavaScript语句的执行过程
2016/01/28 Javascript
js 弹出虚拟键盘修改密码的简单实例
2016/10/10 Javascript
完美解决spring websocket自动断开连接再创建引发的问题
2017/03/02 Javascript
jQuery完成表单验证的实例代码(纯代码)
2017/09/30 jQuery
vue引入axios同源跨域问题
2018/09/27 Javascript
在Create React App中启用Sass和Less的方法示例
2019/01/16 Javascript
微信小程序实现类似微信点击语音播放效果
2020/03/30 Javascript
一文看懂如何简单实现节流函数和防抖函数
2019/09/05 Javascript
基于vue.js仿淘宝收货地址并设置默认地址的案例分析
2020/08/20 Javascript
Vue如何跨组件传递Slot的实现
2020/12/14 Vue.js
搞笑的程序猿:看看你是哪种Python程序员
2015/06/12 Python
Python实现简单的多任务mysql转xml的方法
2017/02/08 Python
Python2.7基于淘宝接口获取IP地址所在地理位置的方法【测试可用】
2017/06/07 Python
python处理csv中的空值方法
2018/06/22 Python
VSCode基础使用与VSCode调试python程序入门的图文教程
2020/03/30 Python
基于SpringBoot构造器注入循环依赖及解决方式
2020/04/26 Python
keras用auc做metrics以及早停实例
2020/07/02 Python
李宁官方网店:中国运动品牌
2017/11/02 全球购物
劳力士官方珠宝商:J.R. Dunn Jewelers
2018/09/29 全球购物
机械专业应届生求职信
2013/12/12 职场文书
化学教学随笔感言
2014/02/19 职场文书
企业法人授权委托书
2014/04/03 职场文书
社会治安综合治理管理责任书
2014/04/16 职场文书
2014大四本科生自我鉴定总结
2014/10/04 职场文书
机关作风建设自查报告
2014/10/22 职场文书
2014年小学少先队工作总结
2014/12/18 职场文书
运动会表扬稿
2015/01/16 职场文书
入党个人总结范文
2015/03/02 职场文书
详解MySQL 用户权限管理
2021/04/20 MySQL
详解CSS伪元素的妙用单标签之美
2021/05/25 HTML / CSS
深入解读Java三大集合之map list set的用法
2021/11/11 Java/Android
Python安装使用Scrapy框架
2022/04/12 Python