PHP 在数组开头插入一个指定 key 的元素

Php 2021-05-14 阅读 65 评论 0

问题描述

使用 array_unshift() 方法,向数组开头增加一个元素,所有的数值键名将修改为从零开始重新计数,所有的文字键名保持不变。比如:

$arr = [
    "key2" => 2,
    "3" => 3
];
array_unshift($arr, 1, 100);
print_r($arr);

输出:

Array
(
    [0] => 1
    [1] => 100
    [key2] => 2
    [2] => 3
)

使用 array_unshift() 无法为添加的元素指定键。

解决方法

使用 + 符号,将插入的元素与数组拼接起来。

$arr = [
    "key2" => 2,
    "3" => 3
];
$arr = [1 => 1, 100 => 100] + $arr;
print_r($arr);

输出:

Array
(
    [1] => 1
    [100] => 100
    [key2] => 2
    [3] => 3
)
最后更新 2021-05-14