我有一个包含30个元素的数组。我想绘制一个具有5行的表,并从每行中的数组中随机分配3个元素,而各行之间没有重复的元素。行之间没有重复。我写了下面的代码:<?$array1 = rang(1,30);function RandomArrayNew($array){ $keyrandom = array_rand($array, 3); $a= $array[$keyrandom[0]]; $b= $array[$keyrandom[1]]; $c= $array[$keyrandom[2]]; $t = [$a, $b, $c]; return $t; }?><table style="width: 100%" class="bodymenu"><?$countRows = 5;for ($i = 0; $i <= $countRows; $i++){$x = RandomArrayNew($array1);$y =array_diff($array1, [$x[0], $x[1], $x[2]]); echo "<tr>"; echo"<td><input type='text' value='".$x[0]."'/></td>"; echo"<td><input type='text' value='".$x[1]."'/></td>"; echo"<td><input type='text' value='".$x[2]."'/></td>"; echo "</tr>";}?></table>该代码实际上通过for循环绘制了5行,并且在每行中随机分配了三个数字。问题是分配的数字重复。我需要防止行之间重复的数字。是否可以取消从原始数组分配的数字并在下一行中使用新数组?如果是的话,我该怎么办?
2 回答
- 2 回答
- 0 关注
- 120 浏览
添加回答
举报
0/150
提交
取消