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、循环遍历

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

<?phpfunction 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));

That‘s it!

更多相关知识,请访问PHP中文网!

更多相关文章

  1. PHP 数组常用函数总结
  2. PHP之array_unique实现二维数组去重
  3. php如何解析url?解析url的5种方式介绍
  4. 分享php生成不重复随机数、数组的4种方法
  5. 学习php中利用explode函数分割字符串到数组
  6. Nginx使用的php-fpm进程管理方式及优化
  7. 直击PHP使用ajax的post方式下载excel文件简单示例
  8. PHP 二维数组排序保持键名不变的方法
  9. 学习PHP查找一列有序数组是否包含某值的方法

随机推荐

  1. Spring Roo
  2. This Android SDK requires And...te ADT
  3. 基于蓝牙socket开发Android蓝牙通信
  4. Android(安卓)Studio Mac快捷键
  5. android-AccessibilityManager
  6. Android练习
  7. Binder驱动的实现
  8. Android之selector标签
  9. android常见的研究方向
  10. layout_alignParentRight android:paddin