首頁 > php教程 > PHP源码 > 生成微信紅包

生成微信紅包

大家讲道理
發布: 2016-11-08 13:33:49
原創
1472 人瀏覽過

生成微信紅包

/**
 * @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[&#39;MoneySum&#39;] = $wamp;
    $returnData[&#39;newTotal&#39;] = 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
)*/
登入後複製


來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
最新問題
熱門推薦
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板