我需要生成一个包含20个1到200之间随机数的数组。我可以使用更短/更干净的代码吗?
<?php
$x= array (rand(1,200),rand(1,200),rand(1,200),rand(1,200),rand(1,200),rand(1,200),rand(1,200),rand(1,200),rand(1,200),rand(1,200),rand(1,200),rand(1,200),rand(1,200),rand(1,200),rand(1,200),rand(1,200),rand(1,200),rand(1,200),rand(1,200),rand(1,200));
echo '<pre>'; print_r($x); echo '</pre>';
?>
答案 0 :(得分:3)
<?php
$arr = array();
for($i=0; $i<20; $i++){
$random_num = rand(1,200);
array_push($arr, $random_num);
}
?>
答案 1 :(得分:2)
不需要循环。
使用range创建1-200之间的所有数字shuffle,并使用array_slice获取数组中的前20个项目。
$range = range(1,200);
shuffle($range);
$random = array_slice($range,0,20);
var_dump($random);