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

前端之家收集整理的这篇文章主要介绍了PHP重置数组为连续数字索引的几种方式总结前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

比如这样的一个PHP数组:

'apple',3 => 'banana',5 => 'orange' );

想要转换为这样的数组:

'apple',1 => 'banana',2 => 'orange' );

1、推荐的方式 array_values 方法

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

$arr = array(
1 => 'apple',5 => 'orange'
);

print_r(array_values($arr));

$arr1 = array(
'name' => 'jerry','age' => 16,'height' => '18cm'
);

print_r(array_values($arr1));

输出结果:

apple [1] => banana [2] => orange ) Array ( [0] => jerry [1] => 16 [2] => 18cm )

2、使用 array_merge 方法

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

$arr = array(
1 => 'apple',5 => 'orange'
);

print_r(array_merge($arr));

$arr1 = array(
'name' => 'jerry','height' => '18cm'
);

print_r(array_merge($arr1));

输出结果:

apple [1] => banana [2] => orange ) Array ( [name] => jerry [age] => 16 [height] => 18cm )

3、循环遍历

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

function resetArr($arr){
$temp = array();
foreach($arr as $v){
$temp[] = $v;
}
return $temp;
}

$arr = array(
1 => 'apple',5 => 'orange'
);

print_r(resetArr($arr));

$arr1 = array(
'name' => 'jerry','height' => '18cm'
);

print_r(resetArr($arr1));

以上这篇PHP重置数组为连续数字索引的几种方式总结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程之家。

原文链接:https://www.f2er.com/php/16270.html

猜你在找的PHP相关文章