PHP重置数组为连续数字索引的几种方式总结


Posted in PHP onMarch 12, 2018

比如这样的一个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 相关文章推荐
APMServ使用说明
Oct 23 PHP
php不用内置函数对数组排序的两个算法代码
Feb 08 PHP
PHP入门学习笔记之一
Oct 12 PHP
PHP 循环删除无限分类子节点的实现代码
Jun 21 PHP
PHP实现的MongoDB数据库操作类分享
May 12 PHP
可以保证单词完整性的PHP英文字符串截取代码分享
Jul 15 PHP
VB中的RasEnumConnections函数返回632错误解决方法
Jul 29 PHP
在Ubuntu 14.04上部署 PHP 环境及 WordPress
Sep 02 PHP
PHP MVC框架路由学习笔记
Mar 02 PHP
php解析base64数据生成图片的方法
Dec 06 PHP
php 静态属性和静态方法区别详解
Apr 09 PHP
tp5(thinkPHP5框架)captcha验证码配置及验证操作示例
May 28 PHP
php关联数组与索引数组及其显示方法
Mar 12 #PHP
基于php数组中的索引数组和关联数组详解
Mar 12 #PHP
PHP生成加减算法方式的验证码实例
Mar 12 #PHP
thinkphp中U方法按路由规则生成url的方法
Mar 12 #PHP
浅谈PHP中pack、unpack的详细用法
Mar 12 #PHP
阿里云Win2016安装Apache和PHP环境图文教程
Mar 11 #PHP
Yii2 中实现单点登录的方法
Mar 09 #PHP
You might like
全国FM电台频率大全 - 6 辽宁省
2020/03/11 无线电
整合了前面的PHP数据库连接类~~做成一个分页类!
2006/11/25 PHP
完美解决在ThinkPHP控制器中命名空间的问题
2017/05/05 PHP
php json转换相关知识(小结)
2018/12/21 PHP
event对象的方法 兼容多浏览器
2009/06/27 Javascript
Ajax异步提交表单数据的说明及方法实例
2013/06/22 Javascript
JS实现不使用图片仿Windows右键菜单效果代码
2015/10/22 Javascript
基于Bootstrap仿淘宝分页控件实现代码
2016/11/07 Javascript
微信小程序开发实战教程之手势解锁
2016/11/18 Javascript
xmlplus组件设计系列之列表(4)
2017/04/26 Javascript
详解Layer弹出层样式
2017/08/21 Javascript
讲解vue-router之什么是编程式路由
2018/05/28 Javascript
vue-cli3+ts+webpack实现多入口多出口功能
2019/05/30 Javascript
leaflet加载geojson叠加显示功能代码
2020/02/21 Javascript
在vue中通过render函数给子组件设置ref操作
2020/11/17 Vue.js
Python解析json文件相关知识学习
2016/03/01 Python
Python cookbook(数据结构与算法)将多个映射合并为单个映射的方法
2018/04/19 Python
使用python切片实现二维数组复制示例
2019/11/26 Python
keras 多gpu并行运行案例
2020/06/10 Python
用HTML5中的Canvas结合公式绘制粒子运动的教程
2015/05/08 HTML / CSS
HTML5高仿微信聊天、微信聊天表情|对话框|编辑器功能
2018/04/23 HTML / CSS
美国复古街头服饰精品店:Need Supply Co.
2017/02/22 全球购物
荷兰最大的多品牌男装连锁店:Adam Brandstore
2019/12/31 全球购物
strlen的几种不同实现方法
2013/05/31 面试题
自我鉴定200字
2013/10/28 职场文书
党委书记岗位职责
2013/11/24 职场文书
党员自我评价分享
2013/12/13 职场文书
新学期家长寄语
2014/01/19 职场文书
优秀士兵先进事迹
2014/02/06 职场文书
三项教育活动实施方案
2014/03/30 职场文书
义卖募捐活动总结
2015/05/09 职场文书
为Java项目添加Redis缓存的方法
2021/05/18 Redis
Python一行代码实现自动发邮件功能
2021/05/30 Python
OpenCV-Python实现人脸美白算法的实例
2021/06/11 Python
详解如何用Python实现感知器算法
2021/06/18 Python
java设计模式--三种工厂模式详解
2021/07/21 Java/Android