2012-03-22 70 views
1

我需要将此数组的键更改为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); 

谢谢

回答

4

因为的foreach创建于$键和$值阵列输入键和值的副本。当你做$ key = $ i;你所做的只是更新副本,而不是原始数组。

改为使用array_values($ arr),或者使用sort()而不是asort()

+0

谢谢你不知道sort() – AFerrara 2012-03-22 21:47:55