一段PHP随机代码,设定了range(1,30)但多次运行结果会显示出0,why?
代码:
$red1=range(1,30);
$sc1=array_rand($red1,8);
?>
foreach($sc1 as $v){
echo "$v ";
}
?>
$red2=range(1,30);
$sc1=array_rand($red2,8);
?>
foreach($sc1 as $v){
echo "$v ";
}
?>
$red1=range(1,30);
$sc1=array_rand($red1,8);
?>
foreach($sc1 as $v){
echo "$v ";
}
?>
$red2=range(1,30);
$sc1=array_rand($red2,8);
?>
foreach($sc1 as $v){
echo "$v ";
}
?>
请多刷新几次,第一个数竟然会出现0?。。为什么?
回复讨论(解决方案)
你想要的应该是打乱数组排序,取8个元素出来是吧?
shuffle($red1);
$red1 = array_splice($red1,0,8);
array_rand()随机取出来的是键名;