各类知识收集,PHP技术分享与解决方案各类知识收集,PHP技术分享与解决方案各类知识收集,PHP技术分享与解决方案

Str Tom,为分享PHP技术和解决方案,贡献一份自己的力量!
QQ:420220301 微信/手机:150-3210-7690
当前位置:首页 > CMS教程 > PHP

关于PHP实现微信红包金额拆分的算法

管理员 2023-09-05
PHP
127

关于PHP实现微信红包金额拆分的算法

内容导读

收集整理的这篇技术教程文章主要介绍了关于PHP实现微信红包金额拆分的算法,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2156字,纯文字阅读大概需要4分钟

内容图文

本篇文章主要介绍了PHP实现微信红包金额拆分试玩的算法示例,内容挺不错的,现在分享给大家,也给大家做个参考。

本文介绍了PHP实现微信红包金额拆分试玩的算法示例,分享给大家,有兴趣的可以看一下:

<?php// 新年红包金额拆分试玩class CBonus{  public $bonus;//红包  public $bonus_num;//红包个数  public $bonus_money;//红包总金额  public $money_single_max;//单个红包限额    public function __construct(){    $this->bonus_num = 10;    $this->bonus_money = 200;    $this->money_single_max = 60;  }  private function randomFloat($min = 0, $max = 1) {    $mt_rand = mt_rand();    $mt_getrandmax = mt_getrandmax();    echo 'mt_rand=' . $mt_rand . ', mt_getrandmax=' . $mt_getrandmax . '<hr/>';    return $min + $mt_rand / $mt_getrandmax * ($max - $min);  }  //计算  public function compute()  {    $this->bonus = array();    $bonus_money_temp = $this->bonus_money;    $money_single_max = $this->money_single_max;    $i = 1;    while($i < $this->bonus_num)    {      if ($money_single_max > $bonus_money_temp)      {        $money_single_max = floatval(sprintf("%01.2f", $bonus_money_temp / 2));//剩余金额不够分时,把剩余金额的一半作为备用金      }      $bonus_money_rad = $this->randomFloat(0.01, $money_single_max);//一个红包随机金额 最小的1分钱      $bonus_money_rad = floatval(sprintf("%01.2f", $bonus_money_rad));      $bonus_money_temp = $bonus_money_temp - $bonus_money_rad ;//待分配的总剩余金额      $bonus_money_temp = floatval(sprintf("%01.2f", $bonus_money_temp));      $this->bonus[] = $bonus_money_rad;      //echo $bonus_money_rad . ',' . $bonus_money_temp . '<hr/>';      $i++;    }    $this->bonus[] = $bonus_money_temp;//分配剩余金额给最后一个红包  }  //打印  public function output(){    $total = 0;    foreach($this->bonus as $k => $v)    {      echo '红包' . ($k+1) . '=' . $v . '<br/>';      $total += $v;    }    echo '红包总金额:'.$total;  }}$CBonus = new CBonus();$CBonus->compute();$CBonus->output();?>

演示结果:

红包1=12.36
红包2=24.37
红包3=42.71
红包4=36.92
红包5=25.84
红包6=23.17
红包7=15.92
红包8=1.35
红包9=7.75
红包10=9.61
红包总金额:200

红包1=24.59
红包2=17.66
红包3=29.67
红包4=32.34
红包5=12.67
红包6=37.15
红包7=17.41
红包8=15.23
红包9=6.13
红包10=7.15
红包总金额:200

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

如何使用php实现快钱支付的功能

以上就是关于PHP实现微信红包金额拆分的算法的详细内容,更多请关注Gxl网其它相关文章!

内容总结

以上是为您收集整理的关于PHP实现微信红包金额拆分的算法全部内容,希望文章能够帮你解决关于PHP实现微信红包金额拆分的算法所遇到的程序开发问题。 如果觉得技术教程内容还不错,欢迎将网站推荐给程序员好友。

内容备注

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。


希望以上内容对你有所帮助!如果还有其他问题,请随时提问。 各类知识收集 拥有多年CMS企业建站经验,对 lecms, classcms, fastadmin, pbootcms, phpcms, eyoucms, yzmcms, PHP, xunruicms, jizhicms, dedecms, wordpress, hkcms, yzncms, 等各类cms的相互转化,程序开发,网站制作,bug修复,程序杀毒,插件定制都可以提供最佳解决方案。

扫码关注

qrcode

QQ交谈

回顶部