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

关于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实现微信红包金额拆分的算法所遇到的程序开发问题。 如果觉得技术教程内容还不错,欢迎将网站推荐给程序员好友。

内容备注

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


本文关键词:

联系我们

在线咨询:点击这里给我发消息

邮件:w420220301@qq.com