我需要将此数组的键更改为0-5,为什么这不起作用?
$arr = array();
while(count($arr) < 6){
$arr[] = rand(1,53);
$arr = array_unique($arr);
}
asort($arr);
$i = 0;
foreach($arr as $key => $value){
//echo $i;
$key = $i;
$i++;
}
print '<pre>';
print_r($arr);
谢谢
答案 0 :(得分:4)
因为foreach在$ key和$ value中创建数组输入键的副本和值。当你做$ key = $ i;您所做的只是更新副本,而不是原始数组。
改为使用array_values($ arr),或使用sort()而不是asort()