比如這樣的一個php數組:
$arr = array(
1 => 'apple',
3 => 'banana',
5 => 'orange'
);
想要轉換為這樣的數組:
$arr = array(
0 => 'apple',
1 => 'banana',
2 => 'orange'
);
1、推薦的方式 array_values 方法
這樣方式無論對普通數組還是關聯數組都適用
?php
$arr = array(
1 => 'apple',
3 => 'banana',
5 => 'orange'
);
print_r(array_values($arr));
$arr1 = array(
'name' => 'jerry',
'age' => 16,
'height' => '18cm'
);
print_r(array_values($arr1));
輸出結果:
[root@localhost php]# php array.php
Array
(
[0] => apple
[1] => banana
[2] => orange
)
Array
(
[0] => jerry
[1] => 16
[2] => 18cm
)
2、使用 array_merge 方法
該方法如果只給了一個數組并且該數組是數字索引的,則鍵名會以連續方式重新索引。所以只能適用于數字索引。
?php
$arr = array(
1 => 'apple',
3 => 'banana',
5 => 'orange'
);
print_r(array_merge($arr));
$arr1 = array(
'name' => 'jerry',
'age' => 16,
'height' => '18cm'
);
print_r(array_merge($arr1));
輸出結果:
[root@localhost php]# php array.php
Array
(
[0] => apple
[1] => banana
[2] => orange
)
Array
(
[name] => jerry
[age] => 16
[height] => 18cm
)
3、循環遍歷
最原始的方式,臃腫且不夠優雅,極力抵制。
?php
function resetArr($arr){
$temp = array();
foreach($arr as $v){
$temp[] = $v;
}
return $temp;
}
$arr = array(
1 => 'apple',
3 => 'banana',
5 => 'orange'
);
print_r(resetArr($arr));
$arr1 = array(
'name' => 'jerry',
'age' => 16,
'height' => '18cm'
);
print_r(resetArr($arr1));
以上這篇PHP重置數組為連續數字索引的幾種方式總結就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:- php實現數組中出現次數超過一半的數字的統計方法
- PHP實現統計一個數字在排序數組中出現次數的方法
- PHP簡單實現合并2個數字鍵數組值的方法
- php恢復數組的key為數字序列的方法
- php提取數字拼接數組的具體操作