我当前的代码在34到76之间生成116个随机数,并将它们放入一个名为$ common的数组中。
for($i = 0; $i < 116; $i++){
$common[] = mt_rand(34, 76);
}
是否可以从2组数字中生成随机数?例如,我想让它在1-22和34-76之间选择116个随机数。
答案 0 :(得分:3)
for($i = 0; $i < 116; $i++){
$common[] = array(mt_rand(1, 22), mt_rand(34, 76))[mt_rand(0, 1)];
}
$range = array_merge(range(1, 22), range(34, 76));
for($i = 0; $i < 116; $i++){
$common[] = $range[array_rand($range)];
}
在第二个例子中,你也可以使用:
$common[] = $range[mt_rand(0, count($range)-1)];
for($i = 0; $i < 116; $i++){
$common[] = mt_rand(0, 1) ? mt_rand(1, 22) : mt_rand(34, 76);
}