2012-03-22 4 views
1

배열의 키를 0-5로 변경해야합니다. 왜 작동하지 않습니까? foreach 문이 $ 키 $ 값의 배열 엔트리의 키와 값의 사본을 만들기 때문에 배열 키 이름 바꾸기

$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

감사드립니다. $ key = $ i 할 때; 원래 배열이 아닌 복사본을 업데이트하는 것뿐입니다.

대신 array_values ​​($ arr)를 사용하거나 asort() 대신 sort()를 사용하십시오.

+0

sort() – AFerrara