我需要以随机顺序打印数字1-100。 print语句应为:
echo'h {'。$ num。'}';
执行此操作的最短代码是什么?
答案 0 :(得分:9)
最简单的方法是将shuffle与包含100个数字
的数组一起使用e.g。
$sequence = range(1, 100);
shuffle($sequence);
foreach ($sequence as $num) {
echo 'h{'.$num.'}';
}
另请参阅range功能
修改强>
我想我可能会对shuffle做些什么补充一点。尽管php.net没有明确说明,但很可能基于Fisher-Yates shuffle algorithm的现代版本。有关其工作原理的视频演示,请参阅http://www.youtube.com/watch?v=Ckh2DJrP7F4。另请参阅这个优秀的flash演示
shuffle算法基本上是这样的:
希望有所帮助。
答案 1 :(得分:3)
请参阅shuffle()
的示例:
$numbers = range(1, 20);
shuffle($numbers);
foreach ($numbers as $number) {
echo "$number ";
}