要求:将54张扑克牌,随机分给6个人,并显示他们的牌,查出牌中同花顺最长的人,并把同花顺显示出来。下方是一部分代码,怎么修改,可以达到效果,主要是排序问题以及花色判断问题。 <!doctype html> <html> <!-- 随机发扑克牌 --> <head> <meta charset="UTF-8"> <title>随机发牌</title> <style> div{margin:15px 0} font{border:1px solid #ccc;padding:6px 3px;margin-right:10px} </style> <?php // 建立数组保存的牌组池 $num = array('A', '2', '3', '4', '5', '6', '7', '8', '9', '10', 'J', 'Q', 'K'); $icon = array('♥' => 'red', '♦' => 'red', '♠' => 'black', '♣' => 'black'); //生成扑克牌 $poker = []; foreach ($icon as $iconkey => $iconvalue) { foreach ($num as $value) { $poker[] = "<font style='color:$iconvalue'> {$value} {$iconkey}</font>"; } } array_push($poker,"<font>大王</font>","<font>小王</font>"); shuffle($poker); //打乱数组 $output_1 = array_slice($poker,0,18); $output_2 = array_slice($poker,18,18); $output_3 = array_slice($poker,36,18); ?> </head> <body> <div>玩家A 牌组</div> <?php for ($i = 0; $i < 18; ++$i) { echo current($output_1); next($output_1); } ?> <div>玩家B 牌组</div> <?php for ($i = 0; $i < 18; ++$i) { echo current($output_2); next($output_2); } ?> <div>玩家C 牌组</div> <?php for ($i = 0; $i < 18; $i++) { echo current($output_3); next($output_3); } ?> </body> </html>
错了 ,是随机分给3个人