记录借载

核心算法

<?phpnamespace app\Server;class LuckDraw
{public static function get_rand($arr){$result = '';$proSum = array_sum($arr);foreach ($arr as $key => $proCur){ //1 5 10 12 22 50$randNum = mt_rand(1,$proSum);if ($randNum <= $proCur){$result = $key;break;}else{$proSum -= $proCur;}}unset($arr);return $result;}
}

控制器调用

public function luckDraw(){$prize = array(array('id' => 1,'text' => '2022 ipad Pro','v' => 1),array('id' => 2,'text' => 'iphone 12','v' => 5),array('id' => 3,'text' => '华为p50','v' => 10),array('id' => 4,'text' => '一加手机','v' => 12),array('id' => 5,'text' => '小米14','v' => 22),array('id' => 6,'text' => '很遗憾未中奖','v' => 50),);$prize = array_combine(array_column($prize,'id'),$prize);foreach ($prize as $key => $val){$arr[$val['id']] = $val['v'];}$rid = LuckDraw::get_rand($arr);$res['yes'] = $prize[$rid]['text'];unset($prize[$rid]);shuffle($prize);for ($i = 0; $i < count($prize);$i++){$pr[] = $prize[$i]['text'];}$res['no'] = $pr;dd($res);}

php 实现抽奖功能相关推荐

  1. 给你30秒的时间,你会用Excel制作出一个抽奖功能吗?

    一说到抽奖,大家都是想到最近的"支付宝锦鲤信小呆",但是今天跟大家谈论的不是这个,而是:你会用Excel制作抽奖功能吗?可能大家都不知道Excel有这么多的神技能,但是你不知道的还 ...

  2. JSP常用内置对象及抽奖功能

    jsp内置对象 JSP九个内置对象分别为:request,response,session,application,config,exception,page,out,pageContext 常用五个 ...

  3. IVX低代码平台开发——微信小程序实现抽奖功能

    写在前面 通过利用可视化编程实现微信小程序的抽奖功能,带大家初步了解 iVX 的强大之处. 文章目录 写在前面 iVX开发 抽奖功能实现 iVX开发 基本介绍 iVX是一个 "零代码&quo ...

  4. php 抽奖活动_PHP实现活动人选抽奖功能的方法

    这篇文章主要介绍了PHP实现活动人选抽奖功能,随机抽取指定人数,依次列举被抽中的人名,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 本文介绍情景为活动人选抽奖,通过简单随机抽取指定人数,依次列举被 ...

  5. java抽奖_JAVA实现用户抽奖功能(附完整代码)

    需求分析 1)实现三个基本功能:登录.注册.抽奖. 2)登录:用户输入账号密码进行登录,输入账号后会匹配已注册的用户,若输入用户不存在则退出,密码有三次输入机会,登录成功后主界面会显示已登录用户的账号 ...

  6. Java实现抽奖功能

    这篇文章主要为大家详细介绍了Java实现抽奖功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 本文实例为大家分享了Java实现抽奖功能的具体代码,供大家参考,具体内容 ...

  7. php jq实现抽奖,php 实现抽奖功能

    最近做的小程序有一个抽奖功能,这里记录下实现抽奖功能的具体流程 前提: 有一组奖品数据如下 id 奖品(prize) 概率(rate) 数量(num) 已抽数量(prize_num) 1 一等奖 10 ...

  8. php9宫格抽奖程序_PHP实现抽奖功能实例代码

    在项目开发中经常会遇到花钱抽奖类型的需求.但是老板总是担心用户用小钱抽到大奖.这样会导致项目亏损.下边这段代码可以有效制止抽奖项目亏钱. 个人奖池: 语言:thinkphp redis mysql 表 ...

  9. java实现抽奖游戏,java实现抽奖功能解析

    本文实例为大家分享了java实现抽奖功能的具体代码,供大家参考,具体内容如下 抽一个: 输入抽奖人数,生成随机数字进行抽奖. 比如:楼主抽幸运儿送游戏,选择前100楼抽取一个幸运儿. import j ...

  10. Js实现轮盘抽奖功能,一招帮你解决选择困难症

    不知道今天自己该吃什么,一招帮你解决选择困难症. 通过html+css+js实现一个轮盘抽奖功能.我们可以将平时吃的饭菜输入到代码中,每到纠结的时候只需点开抽一次就可以了. 实现步骤 html代码: ...

最新文章

  1. 程序设计语言常见面试题
  2. 服务器2003蓝屏A5修复,求助windows 2003 蓝屏分析
  3. 20分钟打造你的Bootstrap站点
  4. mysql 密码1045_mysql登录1045错误时 修改登录密码
  5. 三星的S3C2440A 存储器控制器
  6. unity隔一段时间再显示_Unity3D内置倒计时!从此再不拖延!
  7. 教你一招用python发送QQ邮件
  8. js简单判断身份证合法性以及身份证生日合法性
  9. 洛谷P4782 2-SAT问题
  10. ROS通过串口,读写STM32和HC-SR04超声波测距信息
  11. HTTP的概念以及请求消息的数据格式
  12. 黑马程序员Spring视频教程,全面深度讲解spring5底层原理 学习笔记
  13. 前后端分离的跨域请求问题解决
  14. 信号与系统实验三 信号的卷积计算
  15. Burp Suite配合xray代理socks流量
  16. 计算机图形学圆反走样代码,计算机图形学——反走样
  17. 苏州大学转专业计算机2019汇总,关于2019-2020学年第一学期普通本科生转专业名单的公示...
  18. Vivado 与 Vitis 2022.1 安装记录
  19. 计算机硬件故障注入,容错箭载计算机的硬件故障注入方法研究.pdf
  20. element-ui换肤,全局换肤

热门文章

  1. 【工具】文献分析工具histcite的简单使用
  2. 风光储互补系统直流微电网simulink仿真模型 光伏系统通过boost电路升压并入母线,采用扰动观察法实现最大功率跟踪控制
  3. c语言和指针 pdf,C和指针_(完整版).pdf
  4. 使用carthage 制作xcframework
  5. Python超简单零基础树莓派摄像头车牌识别(使用开源openalpr)笔记
  6. eclipse安装m2e
  7. Openstack Neutron 集成 SDN控制器
  8. 一次SDN控制器环境搭建之路
  9. php-ant一体小烟,五款可重建小烟产品盘点推荐
  10. 技术与思维,哪个更重要?