【问题标题】:How can I add new values to the beginning of an existing array? [duplicate]如何将新值添加到现有数组的开头? [复制]
【发布时间】:2020-03-12 08:37:30
【问题描述】:

我有一个现有的数组,例如:

Array
(
    [0] => ABCD EFGH
    [1] => 123456
    [2] => 7890
)

现在我有一个包含三个值的现有字段。 我需要使用第一个值(即 Key [0])拆分数组,并通过将现有数组插入到数组的开头来使用新数组值更新现有数组。 期望的输出:

Array
(
    [0] => ABCD
    [1] => EFGH
    [2] => 123456
    [3] => 7890
)

我想对现有数组[0] explode(" ", $array[0]);做一个explode()

和新创建的两个数组使用函数array_push(); 但是array_push(); 函数允许通过仅在数组末尾插入新值来更新原始数组。 是否有捷径可寻?还是我必须构建一个新数组并通过覆盖整个数组来使用新值扩展它?

非常感谢。

【问题讨论】:

  • 如果您打开 php.net/array_push 并向下滚动到“另请参阅”部分,您会看到答案。
  • 非常感谢。谢谢! Array_unshift() 函数。 @zerkms

标签: php


【解决方案1】:

使用array_unshift 代替array_push

【讨论】:

  • 谢谢。非常感谢,我已经解决了这个问题。 @Jaya Rathinam
【解决方案2】:

数据数组

Array
(
    [0] => ABCD EFGH
    [1] => 123456
    [2] => 7890
)

    $newArr = array();
    foreach ($data as $key => $res) {
        $exRes = explode(" ", $res);
        foreach ($exRes as $ind => $ex) {
            array_push($newArr, $ex);
        }
    } 

这样的结果

Array
(
    [0] => ABCD
    [1] => EFGH
    [2] => 123456
    [3] => 7890
)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-07-11
    • 2017-12-15
    • 2017-04-05
    • 2014-10-17
    • 2019-04-04
    • 2012-08-21
    • 2016-09-05
    • 1970-01-01
    相关资源
    最近更新 更多