我需要四个多个随机数而不重复。所以我拿了一个数组。你能帮我解决我犯错的地方吗?我有24个问题以随机顺序出现,每页需要4个问题,为此我带了一个数组“$ questions”,并最初插入了25个问题。那么当我得到一个不在数组中的随机数时,我将用随机数替换该特定索引。我在哪里做错了?在php中的多个随机数字没有重复?
<?php
$questions = array(0);
for ($i = 0; $i < 24 ; $i++) {
$questions[$i]= ",";
}
$a="1";
$b="2";
$c="3";
$d="4";
//$a=rand(0, 23);
while(!in_array($a=rand(0, 23), $questions)) {
$replacements = array($a => $a);
$questions = array_replace($questions, $replacements);
$max = sizeof($questions);
if ($max==4) {
break;
}
echo "<br>a=".$a."<br>";
for ($i = 0; $i < 24 ; $i++) {
echo $questions[$i];
}
}
//echo "a=".$a."b=".$b."c=".$c."d=".$d;
?>
这是一个很多重复性代码。你有没有听说过[DRY](http://en.wikipedia.org/wiki/Don%27t_repeat_yourself)? – Zeta 2013-03-10 10:35:23