php如何实现随机抽奖
发表于:2025-02-22 作者:千家信息网编辑
千家信息网最后更新 2025年02月22日,这篇文章主要介绍了php如何实现随机抽奖,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。具体分析如下:1. 按照设定的概率,得到随机抽奖
千家信息网最后更新 2025年02月22日php如何实现随机抽奖
这篇文章主要介绍了php如何实现随机抽奖,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
具体分析如下:
1. 按照设定的概率,得到随机抽奖的结果。
$award) { self::$proSum += $award[self::$proField]; } if (empty(self::$proSum)) { return self::$checkAward = false; } return self::$checkAward = true; } protected static function successRoll($rollKey){ return array('code' => self::SUCCESS_CODE, 'roll_key' => $rollKey, 'msg' => 'roll success'); } protected static function failRoll($msg = 'roll fail'){ return array('code' => self::FAIL_CODE, 'msg' => $msg ); } //抽奖 public static function roll () { if (false == self::$checkAward) { return self::failRoll('awards data is not the right format!'); } $result = mt_rand(0, self::$proSum); $proValue = 0; foreach (self::$awardsArr as $_key => $value) { $proValue += $value[self::$proField]; if ($result <= $proValue) { return self::successRoll($_key); } } return self::failRoll('wrong'); } //改变概率字段名 public static function setProField($field = null) { if (!empty($field)) { self::$proField = $field; } } //设置奖品 public static function setAwards($awards){ self::$awardsArr = $awards; self::checkAwards(); }}2. 示例代码:复制代码 代码如下:$awards = array( '0' => array('pro' => 15, 'info' => '15%的可能性'), '1' => array('pro' => 25, 'info' => '25%的可能性'), '2' => array('pro' => 40, 'info' => '40%的可能性'), '3' => array('pro' => 20, 'info' => '20%的可能性'), );lottery_tool::setProField('pro');lottery_tool::setAwards($awards);$result = array();for ($i = 10000; $i --;) { $result[] = lottery_tool::roll();}foreach ($result as $key => $value) { $awards[$value['roll_key']]['num'] ++;}echo '';var_dump($awards);运行结果如下:
array 0 => array 'pro' => int 15 'info' => string '15%的可能性' (length=15) 'num' => int 1596 1 => array 'pro' => int 25 'info' => string '25%的可能性' (length=15) 'num' => int 2484 2 => array 'pro' => int 40 'info' => string '40%的可能性' (length=15) 'num' => int 3939 3 => array 'pro' => int 20 'info' => string '20%的可能性' (length=15) 'num' => int 1981感谢你能够认真阅读完这篇文章,希望小编分享的"php如何实现随机抽奖"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!
可能性
篇文章
结果
价值
兴趣
同时
更多
朋友
概率
知识
编带
行业
资讯
资讯频道
频道
分析
参考
学习
帮助
支持
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
北京 软件开发
关于网络安全的小报文字
计算机网络技术网卡教案
云服务器弄成企业
渝汇软件开发有限公司
网页共享数据库
php 数据库密码文件
sql2000数据库安全性
数据库性能参数
Vin10怎么安装数据库
云顶之弈手机服务器错误
网络技术个人简历推荐信
达梦数据库更新前100条记录
数据库管理填空题
油管网络技术视频
安徽瑞韬软件开发有限公司
知道数据库技术题库
软件开发怎么选公司
局域网服务器密码怎么删除
大国网络安全博弈有什么
域服务器管理员停用
杭州可以用的打车软件开发
accsss数据库免费吗
山西商业软件开发定制价格
一级网络安全素质教育报名
网络安全的含义以及特征是什么
新乐手机软件开发
软件开发人员bug数考核
网络安全铁路招收吗
易语言怎么把图片写到数据库