热搜:NVER node 开发 php

PHP 生成微信红包

2024-07-23 10:05:01
PHP 生成微信红包

/** * @param $total [你要发的红包总额] * @param int $num [发几个] * @return array[生成红包金额] */function getRedGift($total, $num = 10){    $min = 0.01;    $wamp = array();    $returnData = array();    for ($i = 1; $i < $num; ++$i) {        $safe_total = ($total - ($num - $i) * $min) / ($num - $i); //红包金额的最大值        if ($safe_total < 0) break;        $money = @mt_rand($min * 100, $safe_total * 100) / 100;//随机产生一个红包金额        $total = $total - $money;//剩余红包总额        $wamp[$i] = round($money, 2);//保留两位有效数字    }    $wamp[$i] = round($total, 2);    $returnData['MoneySum'] = $wamp;    $returnData['newTotal'] = array_sum($wamp);    return $returnData;}//测试$data = getRedGift(100, 10);print_r($data);//result:/*Array( [1] => 8.7 [2] => 10.09 [3] => 6.23 [4] => 6.87 [5] => 0.47 [6] => 3.12 [7] => 7.52 [8] => 12.21 [9] => 20.53 [10] => 24.26)*/