合并由第一级键相关的两个二维数组中的行数据

问题描述 投票:0回答:3

如何将一个数组合并/推送到另一个数组的特定键?这是我的数组:

// Array 1
Array
(
    [1] => Array
        (
            [name] => test
        )
)

// Array 2
Array
(
    [1] => Array
        (
            [age] => 25
        )
)

我想要这个结果:

Array
(
    [1] => Array
        (
            [name] => test
            [age] => 25
        )
)
php arrays multidimensional-array merging-data
3个回答
1
投票
$arr = [ 1 => [ "name" => "Test" ] ];
$arr2 = [ 1 => [ "age" => 25 ] ];

foreach ($arr as $key => $value) {
     if (isset($arr2[$key])) {
        $arr[$key] = array_merge($value,$arr2[$key]);
     }
}

print_r($arr);

检查输出https://eval.in/602680


0
投票

只需将它们加在一起即可:

<?php
$array1 = array('name' => 'test');
$array2 = array('age' => 21);

var_dump($array1 + $array2);

0
投票

您可以遍历第一个数组并使用数组联合赋值运算符和空合并运算符将第二个数组中的相关值附加到第一个数组。 演示

foreach ($arr1 as $k => &$v) {
    $v += $arr2[$k] ?? [];
}
var_export($arr1);
© www.soinside.com 2019 - 2024. All rights reserved.