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

栏目: 编程语言 · PHP · 发布时间: 7年前

内容简介:下面小编就为大家分享一篇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)); 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Web标准之道

Web标准之道

阿一、棕熊、李战、丁学 / 人民邮电出版社 / 2009-8 / 35.00元

《Web标准之道:博客园精华集》由博客园知名博主联手打造,涉及Web标准、HTML/CSS、JavaScript、SEO优化等诸多领域,内容新颖,观点独特,妙语连珠。《Web标准之道:博客园精华集》并不是一本由代码和技巧堆积而成的集合,更多的是探讨了Web设计中若干理念和心得,其中多为经验之谈。无论对于从事Web前端设计的人士,还是对于那些从事Web后端编程的技术人员,《Web标准之道:博客园精华......一起来看看 《Web标准之道》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换