【发布时间】:2012-02-10 20:35:41
【问题描述】:
我有一些代码可以生成 0-9 之间的 4 个唯一随机数:-
//Globals
$arr = array();
$gridMax = 9;
$i = 0;
while ( count($arr) < 4 ) {
$x = mt_rand(0, $gridMax);
if ( !in_array($x, $arr) ) {
$arr[] = $x;
}
}
print_r($arr);
我正在尝试创建一个网格,如果相应的网格编号与我的数组中的 4 个唯一值之一相同,那么我希望它向 $build 变量添加一些文本。如果没有,什么也不做:-
while ($i <= $gridMax) {
foreach ($arr as $value) {
if ($value == $i) {
$build = "build";
} else {
$build = "";
}
}
echo "<li class=\"map\">{$build}</li>";
$i++;
}
但是,它仅适用于最后一个键中的最终值(此处显示):-
http://www.kryptonite-dove.com/sandbox/mt_rand/
谁能给我一些建议?我已经好几个月没写代码了,脑子里有点迷糊!
【问题讨论】:
标签: php loops random foreach while-loop