Php 重命名数组键

Php 重命名数组键,php,Php,我需要将此数组的键更改为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>'; pr

我需要将此数组的键更改为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);
$arr=array();
而(计数($arr)<6){
$arr[]=兰特(1,53);
$arr=数组\唯一($arr);
}
asort($arr);
$i=0;
foreach($arr作为$key=>$value){
//echo$i;
$key=$i;
$i++;
}
打印“”;
印刷费($arr);

谢谢

,因为foreach在$key和$value中创建了数组条目键和值的副本。当您执行$key=$i;您所做的只是更新副本,而不是原始数组


改用array\u值($arr),或者改用sort()而不是asort()

,因为foreach会创建数组条目键和$key和$value中的值的副本。当您执行$key=$i;您所做的只是更新副本,而不是原始数组

改为使用数组_值($arr),或使用sort()代替asort()