PHP重置数组为连续数字索引的三种方式

首页 编程分享 PHP丨JAVA丨OTHER 正文

藏色散人 转载 编程分享 2020-07-07 23:49:05

简介 比如这样的一个php数组:$arr = array( 1 => apple, 3 => banana, 5 => orange);想要转换为这样的数组:$arr = array( 0 => apple, 1 => banana, 2 => orange);1、推荐的方式  array_values 方法_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]Id 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]Id 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!

更多相关知识,请访问!

转载链接:http://www.php.cn//php-weizijiaocheng-454158.html


Tags:


本篇评论 —— 揽流光,涤眉霜,清露烈酒一口话苍茫。


    声明:参照站内规则,不文明言论将会删除,谢谢合作。


      最新评论




ABOUT ME

Blogger:袅袅牧童 | Arkin

Ido:PHP攻城狮

WeChat:nnmutong

Email:nnmutong@icloud.com

标签云