脚本宝典收集整理的这篇文章主要介绍了PHP彩票门票选手,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我做了这个,它给了我中奖的票号,但后来我无法得到获胜的用户:
$totaltickets = 0; foreach($players as $player){ $totaltickets += $player->deposITedValue*100; } $winningTicket = rand(1,$totaltickets);
我有这样的行:
Player1 - 1.25$ Player2 - 5.99$ etc..
如果有可能那么我想保持这样,并且每个票证在数据库中没有1000行.
我将让球员保持他们的门票位置(开始/结束).当我选择随机票时,我会看看我的号码是否在他们的范围内,如果是,那么我找到了胜利者.
<?PHP class TicketMaster { PRivate $players = array(); public $total = 0; public function addPlayer($player) { $player->tickets[0] = $this->total; $this->total += $player->value; $player->tickets[1] = $this->total; $this->players[] = $player; } public function selectWinner() { $ticket = rand(0,$this->total); foreach ($this->players as $player) if ($ticket >= $player->tickets[0] && $ticket <= $player->tickets[1]) return $player; return false; } } class Player { public $name = ''; public $value = 0; public $tickets = array(0,0); function __construct($name,$value) { $this->name = $name; $this->value = $value; } } $ticketMaster = new TicketMaster(); $ticketMaster->addPlayer(new Player("John",200)); $ticketMaster->addPlayer(new Player("Mike",200)); $ticketMaster->addPlayer(new Player("Dave",1000)); echo $ticketMaster->selectWinner()->name;
也
$ticket = rand(0,$this->total); //change to random_int,but I kept it at rand because eval.in only works with this one
Output:戴夫
戴夫大部分时间都赢了,因为他有1000张门票,而其他两位只有400张门票的球员.
以上是脚本宝典为你收集整理的PHP彩票门票选手全部内容,希望文章能够帮你解决PHP彩票门票选手所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。