我是靠谱客的博主 苗条音响,最近开发中收集的这篇文章主要介绍PHP重置数组为连续数字索引的三种方式,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

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));
登录后复制

That‘s it!

立即学习
全程直播 + 实战授课 + 边学 + 边练 + 边辅导

以上就是PHP重置数组为连续数字索引的三种方式的详细内容,更多请关注靠谱客其它相关文章!

最后

以上就是苗条音响为你收集整理的PHP重置数组为连续数字索引的三种方式的全部内容,希望文章能够帮你解决PHP重置数组为连续数字索引的三种方式所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(77)

评论列表共有 0 条评论

立即
投稿
返回
顶部