一个简单php 抽奖小程序

一个抽奖小程序,概论可控,也可某个奖品在前端显示,而程序中根本不可能获得,把所有的概率x10后相加起来,新数组中每项的值等于它前几个的和加上它本身,然后随即生成一个0到最大数之间的一个数,通过循环查看它属于那个区间,返回该区间的key,代码如下:

  1. $prize = array
  2.  1 => 3.5,  //3.5%机率 
  3.  2 => 2.5,  
  4.  3 => 6,  
  5.  4 => 2,  
  6.  5 => 42,  //42%机率 
  7.  6 => 36,  
  8.  7 => 2,  
  9.  8 => 4,  
  10.  9 => 2 
  11. ); 
  12. //最后确认相加等于100 
  13. $prizeList = array
  14.  1 => array('小仙子'),  
  15.  2 => array('5Q币'),  
  16.  3 => array('38888游戏币'),  
  17.  4 => array('88888游戏币'),  
  18.  5 => array('谢谢参与!'),  
  19.  6 => array('欢迎下次再来!'),  
  20.  7 => array('10Q币'),  
  21.  8 => array('888银元宝(绑定)'),  
  22.  9 => array('随机高级坐骑(绑定)'
  23. ); 
  24. //unset($prize[7]); 直接把10Q这个奖品去掉 
  25.   
  26. $times = 10; 
  27. $max = 0; 
  28. foreach ($prize as $k => $v
  29.  $max = $v * $times + $max
  30.  $row['v'] = $max
  31.  $row['k'] = $k
  32.  $prizeZone[] = $row
  33.   
  34. $max–; //临界值 
  35. $rand = mt_rand(0, $max); 
  36. $zone = 1; 
  37. foreach ($prizeZone as $k => $v
  38.  if ($rand >= $v['v']) 
  39.  { 
  40.   if ($rand >= $prizeZone[$k + 1]['v']) 
  41.   { 
  42.    continue
  43.   } 
  44.   else 
  45.   { 
  46.    $zone = $prizeZone[$k + 1]['k']; 
  47.    break
  48.   } 
  49.  } 
  50.  $zone = $v['k']; 
  51.  break
  52. print_r($prizeList[$zone][0]); 
波比源码 – 精品源码模版分享 | www.bobi11.com
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 本站源码并不保证全部能正常使用,仅供有技术基础的人学习研究,请谨慎下载
8. 如遇到加密压缩包,请使用WINRAR解压,如遇到无法解压的请联系管理员!

波比源码 » 一个简单php 抽奖小程序

发表评论

Hi, 如果你对这款模板有疑问,可以跟我联系哦!

联系站长
赞助VIP 享更多特权,建议使用 QQ 登录
喜欢我嘛?喜欢就按“ctrl+D”收藏我吧!♡