博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php随机抽奖
阅读量:4572 次
发布时间:2019-06-08

本文共 2545 字,大约阅读时间需要 8 分钟。

貌似有些不合理,麻烦大家帮忙指正指正!谢谢~

=0;$j--){ if($j==0){ $tmp['b']=intval(0); $tmp['e']=intval($arr[$j]['v']); return $tmp; }else{ $tmp['b']=intval($arr[$j-1]['e']); $tmp['e']=intval($arr[$j-1]['e']+$arr[$j]['v']); return $tmp; } } } function dorand(){ //奖品 $prize_arr = array( '0' => array('id'=>1,'prize'=>'平板电脑','v'=>3), '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'=>'Q币10元','v'=>20), '5' => array('id'=>6,'prize'=>'下次没准就能中哦','v'=>50), ); //计算概率范围 for($i=0;$i
$val) { $arr[$val['id']]['v'] = $val['v']; $arr[$val['id']]['b'] = $val['b']; $arr[$val['id']]['e'] = $val['e']; $arr[$val['id']]['prize'] = $val['prize']; //获取概率总和 $sum +=$arr[$val['id']]['v']; } ///产生随机数 $r = mt_rand(1, $sum); //var_dump($arr); //遍历数据 foreach($arr as $k=>$v){ //exit; //判断概率区间 if(($v['b']<=$r && $v['e']>=$r)){ //echo "随机数:".$r . "\t" . "概率".$v['b']."--".$v['e'] . "\t"."总概率:".$sum. "\n"; //返回中奖id $id = $k; return $prize = $arr[$k]['prize']; break; } } } $one = 0; $two = 0; $three = 0; $four = 0; $five = 0; $six = 0; for($z=1;$z<=100;$z++){ if(dorand()=="平板电脑"){ $one++; } if(dorand()=="数码相机"){ $two++; } if(dorand()=="音箱设备"){ $three++; } if(dorand()=="4G优盘"){ $four++; } if(dorand()=="Q币10元"){ $five++; } if(dorand()=="下次没准就能中哦"){ $six++; } echo "\r\n第【".$z."】次中奖奖品为:".dorand()."

"; } echo "平板电脑 :".(($one/100)*100)."%"; echo '

'; echo "数码相机 :".(($two/100)*100)."%"; echo '
'; echo "音箱设备 :".(($three/100)*100)."%"; echo '
'; echo "4G优盘 :".(($four/100)*100)."%"; echo '
'; echo "Q币10元 :".(($five/100)*100)."%"; echo '
'; echo "下次没准就能中哦 :".(($six/100)*100)."%"; echo '
'; ?>

 

转载于:https://www.cnblogs.com/phpfensi/p/3849265.html

你可能感兴趣的文章
bzoj1385 [Baltic2000]Division expression
查看>>
字符的读入问题
查看>>
五子棋计算思路
查看>>
83. 移除已排序链表中重复的节点 Remove Duplicates from Sorted List
查看>>
linux的联网以及语言的更改
查看>>
145-PHP 使用<<<和HTML混编(一)
查看>>
栈的顺序存储结构以及实现
查看>>
【python】-- Socket粘包问题 ,解决粘包的几种方法、socket文件下载,md5值检验
查看>>
2016-09-12
查看>>
CDHD驱动器——ServoStudio配置高创伺服速度模式不转
查看>>
完整版本的停车场管理系统源代码带服务端+手机android客户端
查看>>
【UOJ 92】有向图的强联通分量
查看>>
bzoj 1192
查看>>
Windows10/Servers 2016的TrustedInstaller权限获取(及乱改System后救砖
查看>>
关于mysql转移数据库时没有导出sql脚本的情况下,如何导入数据到新的数据库中...
查看>>
链表逆序
查看>>
[zz]链表倒序
查看>>
简单易用的图像解码库介绍 —— stb_image
查看>>
【漏洞复现】永恒之蓝 ms17-010 漏洞利用 攻击手法
查看>>
HTML标签(二)
查看>>