对于随机顺序,没有重复的数字


For in random order no repeating numbers

在不重复任何数字的情况下做随机"for"的最佳方法是什么?

for ($i = 1; $i <= 10; $i++) {
    echo $i;
}

我想了一些方法,但代码量很大,非常复杂。有一个标准功能可以做我愿意做的事情?

$numbers = range(1,10);
shuffle($numbers);
foreach($numbers as $i) {
    // do stuff
}

这将为您提供数字 1 到 10,没有随机顺序的重复。

$range = range(1,10);
shuffle($range);
foreach ($range as $i) {
    echo $i;
}

创建一个包含一系列数字的数组,然后随机播放:

$array = range(1, 10);
shuffle($array);
for ($i=0,$c=count($array); $i<$c; $i++) {
    echo $array[$i] . "'n";
}