這次帶給大家怎樣做php重置數組為連續數字索引,做到php重置數組為連續數字索引的注意事項有哪些,下面就是實戰案例,一起來看一下。
例如這樣的一個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中文網其他相關文章!