我有这两个功能:
@H_403_36@function drawNumber($drawnNumbers){ $unique = true; while ($unique == true){ $number = mt_rand(10,69); if (!in_array($number,$drawnNumbers)){ return $number; $unique = false; } } } fillCard(); ?>
这是一个宾果游戏.该卡充满了随机数字.但我不能这样:
column column column column column column row 10 13 16 14 16 19 row 24 26 28 29 23 21 row 36 33 39 30 31 35 row 46 48 42 45 43 47 row 59 56 51 52 58 50 row 60 65 68 62 61 67
所以我想让第一行的数字从10到19
第二行从20到29,依此类推.
我试过这样的
<?PHP drawnNumber(): $number = mt_rand(0,9); fillArray(): $number = $row . $number; ?>
但这不起作用,因为卡中有两个数字.
所以在此之前我用in_array以不同的方式尝试了它:
<?PHP function fillCard(){ $card = array(); /* fill card with random numbers */ for($i = 0,$min = 10,$max = 19; $i < 6; $i++,$min+=10,$max += 10) { for($j = 0; $j < 6; $j++) { $number = mt_rand($min,$max) ; if(!in_array($number,$card){ $card['row' . $i]['column' . $j]['number'] = $number; $card['row' . $i]['column' . $j]['found'] = 0; } } } var_dump($card); return $card; } ?>
但是卡片中仍然有两个随机数字.
在过去的两周里,我尝试了其他一些想法,但我无法让它一起工作.
如果有一件事成功,那么另一件事就会失败.
我可以得到随机数,但卡中没有唯一的随机数.
我希望有一个人可以帮助我.
(有关额外信息:它是一个宾果游戏.所以drawnNumber()是“球”,它被绘制
并存储在数组$drawnNumbers中,它们也是唯一的随机数. fillCard()是
填充宾果卡并检查$drawNumber是否在$card中的功能)
如果有人能告诉我如何让它发挥作用,我将不胜感激.也许在
一种算法方式还是一些代码?
先感谢您.