天天看點

php 控制機率紅包,php生成紅包機率算法簡單示例

這篇文章主要為大家詳細介紹了php生成紅包機率算法簡單示例,具有一定的參考價值,可以用來參考一下。

對php生成紅包機率算法簡單示例感興趣的小夥伴,下面一起跟随512筆記的小編巴閉妹來看看吧!

function getRandMoney($totalMoney, $totalPeople=2, $miniMoney=1){

$randRemainMoney = $totalMoney - $totalPeople * $miniMoney;//剩餘需要随機的錢數

return _getRandMoney($randRemainMoney, $totalPeople, $miniMoney);

}

function _getRandMoney($totalMoney, $totalPeople, $miniMoney){

$returnMessage = array('status'=>1, 'data'=>NULL);

if($totalMoney > 0){

$returnMessage['data'] = _randMoney($totalMoney, $totalPeople, $miniMoney);

}elseif($totalMoney == 0){

$returnMessage['data'] = array_fill(0, $totalPeople, 1);

}else{

$returnMessage['status'] = -1;

$returnMessage['data'] = '參數傳遞有誤,生成紅包失敗';

}

return $returnMessage;

}

function _randMoney($totalMoney, $totalPeople, $miniMoney){

$data = array_fill(0, $totalPeople, $miniMoney);

if($totalPeople > 1){

foreach($data as $k => $v){

if($k == $totalPeople -1){

$data[$k] = $totalMoney + $v;

break;

}else {

if($totalMoney == 0) break;

$randMoney = rand(0, $totalMoney);

$totalMoney -= $randMoney;

$data[$k] = $randMoney + $v;

}

}

}

return $data;

}

注:關于php生成紅包機率算法簡單示例的内容就先介紹到這裡,更多相關文章的可以留意512筆記的其他資訊。

關鍵詞:

您可能感興趣的文章