如何将多个数组添加到子数组?

时间:2014-08-07 18:47:28

标签: php arrays

我有以下三个对象数组:

First Array: $array1

Array (
    [0] => Array (
            [id] => 1
            [name] => world
           )
)

第二阵列: $array2

Array (
    [count] => 1
)

第三阵列: $array3

Array (
    [KM] => 2
)

我想将$array2$array3中的关联元素添加到$array1[0]的子数组中。

期望的输出:

Array (
    [0] => Array
        (
            [id] => 1
            [name] => world
            [count] => 1
            [KM] => 2
        )
)

5 个答案:

答案 0 :(得分:2)

array_merge是您一直在寻找的功能

示例代码:

$output_array[0] = array_merge($array1[0], $array2, $array3));
print_r($output_array);

答案 1 :(得分:2)

这是你使用array_merge()

的方法
<?php
    $array1 = array(array("id" => 1, "name" => "world")); 
    $array2 = array("KM" => 2); 
    $array3 = array("count" => 1); 

    print_r(array(array_merge($array1[0], $array2, $array3))); 
?>

哪个会输出:

Array
(
    [0] => Array
        (
            [id] => 1
            [name] => world
            [KM] => 2
            [count] => 1
        )

)

答案 2 :(得分:1)

这将为您提供所需的输出:

<?php

$array1 = array(array("id" => 1, "name" => "world"));
$array2 = array("KM" => 2); 
$array3 = array("count" => 1); 

$array1[0] = array_merge($array1[0], $array2, $array3);
print_r($array1);
?>

答案 3 :(得分:0)

array_merge()将合并数组。问题是,$array1的结构与其他结构不同。数组中有一个数组。要按指定生成所需的输出,您需要:

$array4 = array(
    0 => array_merge($array1[0], $array2, $array3)
);

但我相信你想要更像这样的东西:

$array4 = array_merge($array1[0], $array2, $array3);

答案 4 :(得分:0)

数组array_merge(array $ array1 [,array $ ...]) 将一个或多个数组的元素合并在一起,以便将一个值的值附加到前一个数组的末尾。它返回结果数组。

如果输入数组具有相同的字符串键,则该键的后一个值将覆盖前一个键。但是,如果数组包含数字键,则后面的值不会覆盖原始值,但会附加。

带有数字键的输入数组中的值将使用从结果数组中的零开始的递增键重新编号。