当前位置:Gxlcms > PHP教程 > 怎样做到php重置数组为连续数字索引

怎样做到php重置数组为连续数字索引

时间:2021-07-01 10:21:17 帮助过:21人阅读

这次给大家带来怎样做到php重置数组为连续数字索引,做到php重置数组为连续数字索引的注意事项有哪些,下面就是实战案例,一起来看一下。

比如这样的一个php数组:

  1. $arr = array(
  2. 1 => 'apple',
  3. 3 => 'banana',
  4. 5 => 'orange'
  5. );

想要转换为这样的数组:

  1. $arr = array(
  2. 0 => 'apple',
  3. 1 => 'banana',
  4. 2 => 'orange'
  5. );

1、推荐的方式 array_values 方法

这样方式无论对普通数组还是关联数组都适用

  1. <?php
  2. $arr = array(
  3. 1 => 'apple',
  4. 3 => 'banana',
  5. 5 => 'orange'
  6. );
  7. print_r(array_values($arr));
  8. $arr1 = array(
  9. 'name' => 'jerry',
  10. 'age' => 16,
  11. 'height' => '18cm'
  12. );
  13. print_r(array_values($arr1));

输出结果:

  1. [root@localhost php]# php array.php
  2. Array
  3. (
  4. [0] => apple
  5. [1] => banana
  6. [2] => orange
  7. )
  8. Array
  9. (
  10. [0] => jerry
  11. [1] => 16
  12. [2] => 18cm
  13. )

2、使用 array_merge 方法

该方法如果只给了一个数组并且该数组是数字索引的,则键名会以连续方式重新索引。所以只能适用于数字索引。

  1. <?php
  2. $arr = array(
  3. 1 => 'apple',
  4. 3 => 'banana',
  5. 5 => 'orange'
  6. );
  7. print_r(array_merge($arr));
  8. $arr1 = array(
  9. 'name' => 'jerry',
  10. 'age' => 16,
  11. 'height' => '18cm'
  12. );
  13. print_r(array_merge($arr1));

输出结果:

  1. [root@localhost php]# php array.php
  2. Array
  3. (
  4. [0] => apple
  5. [1] => banana
  6. [2] => orange
  7. )
  8. Array
  9. (
  10. [name] => jerry
  11. [age] => 16
  12. [height] => 18cm
  13. )

3、循环遍历

最原始的方式,臃肿且不够优雅,极力抵制。

  1. <?php
  2. function resetArr($arr){
  3. $temp = array();
  4. foreach($arr as $v){
  5. $temp[] = $v;
  6. }
  7. return $temp;
  8. }
  9. $arr = array(
  10. 1 => 'apple',
  11. 3 => 'banana',
  12. 5 => 'orange'
  13. );
  14. print_r(resetArr($arr));
  15. $arr1 = array(
  16. 'name' => 'jerry',
  17. 'age' => 16,
  18. 'height' => '18cm'
  19. );
  20. print_r(resetArr($arr1));

相信看了本文案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!

推荐阅读:

php操作字符串分割成数组

实现php合并数组并保留键值有哪些方法?

PHP实现防止SQL注入方法总结

以上就是怎样做到php重置数组为连续数字索引的详细内容,更多请关注Gxl网其它相关文章!

人气教程排行