微信红包算法
May 22, 2016 pm 06:24 PM微信红包算法
/**生成红包的函数*/ 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; }
Copier après la connexion
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Article chaud
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines
By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines
By DDD
R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques semaines
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines
By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds Tags

Article chaud
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines
By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines
By DDD
R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques semaines
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines
By 尊渡假赌尊渡假赌尊渡假赌

Tags d'article chaud

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)
