返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >php代码怎么实现红包功能
  • 821
分享到

php代码怎么实现红包功能

php红包 2018-08-18 01:08:36 821人浏览
摘要

php代码实现红包功能的方法:1、通过distribute_red_bages方法实现拼手气红包;2、通过average_red_bages方法实现均分红包;3、通过rob_red_bages方法实现规定红包数。

本文操作环境:windows7系统、PHP7.1版、DELL G3电脑

php代码怎么实现红包功能?

PHP 红包功能代码

前段时间被问这个问题,最近有空就写写啦,还是挺有趣的

首先做下抢红包方法分类:

对于发红包的人来说,一共有大致3类(其他的我暂时没想到,有想到可以联系我呀~)

一、拼手气红包个数不定(完全看运气)

二、拼手气红包规定个数(个数一定,至少一分)

三、平均分红包(个数一定,大家平分)还是这个好写是吧!嘿嘿

上代码:

<?php
var_dump(rob_red_bages(5 , 10));
var_dump(distribute_red_bages(5));

function distribute_red_bages($sum){
    $sum = $sum*100;
    $i=0;
    while($sum>0){
        $temp = rand(1 , $sum);//红包值
        $sum -= $temp;
        $arr[$i++] = $temp/100;
    }
    //check($arr);
    return $arr;
}

function average_red_bages($sum , $num){
    $res = $sum/$num;
    for($i=0 ; $i<$num ; $i++){
        $arr[$i] = $res;
    }
    //check($arr);
    return $arr;
}

function rob_red_bages($sum , $num){
    $sum = $sum*100;
    for($i=0 ; $i<$num ; $i++){
        $temp = rand(1 , $sum);
        $arr[$i] = $temp;
        $sumall += $temp;
    }
    $k = $sum/$sumall;
    for($i=0 ; $i<sizeof($arr); $i++){
        $arr2[$i] = $arr[$i]*$k/100;        
    }
    return $arr2;
}

function check($arr){
    foreach($arr as $a){
        $sum += $a;
        echo $a."+";
    }
    
    echo " 0 =".$sum."\n";
}
?>

下面分析下拼手气红包吧(平分的就不说了,大家都会):

拼手气红包个数不定思路:(总金额:sum)

---->随机第一个小于sum的数: n

---->总金额减去该数: temp = sum-n

---->随机一个小于temp的数

---->递归上述方法直到总金额为0

---->返回存储随机结果的数组

这个方法比较常规,用来实现规定个数的红包也是可以实现的!不过~

拼手气红包规定个数思路(总金额 sum,红包个数 num )

---->随机num个小于sum的数,生成数组

---->对这些数求和得到allsum

---->用sum除以allsum得到所有生成数的公倍数

---->数组每个元素与公倍数相乘得到每个红包的的数值

这个方法有缺点(最终的结果可能会略大于sum,或者略小于sum 因为除法可能出现无理数)

大概就是这些啦!欢迎交流指正!~~~

--结束END--

本文标题: php代码怎么实现红包功能

本文链接: https://www.lsjlt.com/news/467.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • php代码怎么实现红包功能
    php代码实现红包功能的方法:1、通过distribute_red_bages方法实现拼手气红包;2、通过average_red_bages方法实现均分红包;3、通过rob_red_bages方法实现规定红包数。 ...
    821
    2023-03-24
    php 红包
  • ecshop 注册送红包实现代码
    在user.php 的注册成功信息显示前面,大概是 show_message(sprintf($_LANG['register_success'].............http://www.cppcns.com前面加入 注意下下面的 $ ...
    142
    2023-03-24
    ecshop 注册送红包
  • php怎么实现关注功能
    php实现关注功能的方法:1、创建控制层实现代码“namespace App\Controller\Test...”;2、设计服务层实现代码“namespace App\Service\Ptg...”;3、设置好仓储层代码即可。 ...
    453
    2023-03-24
    php
  • php相册功能怎么实现
    php相册功能的实现方法:1、创建相册首页并实现分页效果;2、创建后台处理页面;3、实现相册上传页面;4、定义图片浏览功能;5、通过“unlink($imgfile);”等语句实现删除图片功能即可。 ...
    482
    2023-03-24
    php 相册功能
  • php怎么实现插件功能
    php实现插件功能:1、新建函数文件“function.php”,代码内容是“function addAction($hook, $actionFunc){...}”;2、确认插件的Hook点,设置钩子埋入点;3、建立“check_all.php”和“login.php”两个文件,然后在“check_all.php”文件中写入“addAction(...)”即可。 ...
    934
    2023-03-24
    插件 php
  • springboot+websocket实现并发抢红包功能
    本文主要介绍了springboot+websocket实现并发抢红包功能,主要包含了4种步骤,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 ...
    797
    2023-03-24
    springboot websocket并发抢红包 springboot 并发抢红包
  • JAVA实现红包分发的示例代码
    这篇文章主要介绍了JAVA实现红包分发的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 ...
    441
    2023-03-24
    JAVA 红包分发 JAVA 红包
  • php怎么实现加好友功能
    php实现加好友功能的方法:1、把好友申请储存到申请数据表中;2、查询申请表;3、实现删除好友;4、创建分组名称字段;5、查询并列出数据表信息即可。 ...
    535
    2023-03-24
    php
  • php商城秒杀功能怎么实现
    php商城秒杀功能的实现方法:1、打开php文件,连接redis数据库;2、创建待抢购商品的list列表;3、模拟用户请求并设置随机获取10名用户表示抢购成功;4、判断抢购列表中是否已存在该用户并获取列表中所有的数据;5、将redis中已抢购的用户保存到数据库中即可。 ...
    856
    2023-03-24
    php
  • php怎么实现点击删除代码
    php实现点击删除代码的方法:1、创建一个PHP示例文件,并连接数据库;2、查询数据库;3、在超链接删除处调用javascript方法,并传递记录id即可。 ...
    676
    2023-03-24
    php
  • php代码怎么实现修改昵称
    php代码实现修改昵称的方法:1、查找图片格式;2、将文件保存在项目所在的服务器;3、获取配置信息;4、验证引用sdk并上传图片到服务器,更新头像昵称即可。 ...
    246
    2023-03-24
    php 昵称
  • dw怎么实现php代码提示
    dw实现php代码提示的方法:1、打开dreamweaver软件;2、按“$”键盘,显示当前脚本中的所有变量列表;3、选择所需的变量,然后按“Enter/Return”键即可。 ...
    741
    2023-03-24
    php dw
  • Android微信抢红包功能的实现原理浅析
    快到过农历年了,微信红包也越来越多了,出现了好多红包外挂程序,就很好奇如何实现的,于是自己研究了一番,亲自写了个微信抢红包的APP。现在就一步一步来实现它。实现思路微信抢红包程序开启时候,他就可以随时识别、捕获红包,服务可以实现正在功能 ...
    899
    2023-03-24
    抢红包 Android
  • php 怎么实现大转盘功能
    php实现大转盘功能的方法:1、拼装奖项数组,代码如“$prize_arr = array(...)”;2、计算中奖概率;3、返回中奖情况即可。 ...
    253
    2023-03-24
    php 大转盘
  • C#实现抢红包算法的示例代码
    很多商家都会使用红包进行促销,那么你知道红包算法是怎么实现的吗,本文主要介绍了C#实现抢红包算法,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 ...
    495
    2023-03-24
    C# 抢红包
  • php生成微信红包数组的方法
    这篇文章主要介绍了php生成微信红包数组的方法,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下 ...
    123
    2023-03-24
    php 微信 红包 数组
  • php怎么运行代码
    php运行代码的方法:1.通过命令行窗口进入php所在目录。2.通过配置php环境变量使用PHP命令执行代码。具体操作步骤:第一种方法:打开命令行窗口后进入PHP所在的目录,例如是放在c盘的wamp文件下:cd /d C:\wamp\bin ...
    459
    2023-03-24
    PHP
  • php怎么实现扫一扫功能
    php实现扫一扫功能的方法:1、生成二维码,生成一个唯一标识uuid,并使用redis保存临时信息;2、通过一个长连接维持用户请求和服务器之间的通信;3、使用手机扫描二维码获取唯一标识uuid,并判断该标识是否有效。 ...
    923
    2023-03-24
    php 扫一扫
  • php怎么实现人员信息搜索的功能
    php实现人员信息搜索的功能的方法:1、创建conn.php文件连接人员信息数据库;2、创建index.php文件;3、通过“ if(isset($_POST["flag"])){...}”等语句实现人员搜索功能即可。 ...
    755
    2023-03-24
    PHP MySQL
  • php怎么实现在线直播功能
    php实现在线直播功能的方法:1、在控制台找到直播云服务,创建直播云空间;2、按需要将域名解析出来;3、安装composer包;4、通过liveStart方法实现直播即可。 ...
    406
    2023-03-24
    php 直播
热门问答
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作