Php 如何将两个数组合并为一个

Php 如何将两个数组合并为一个,php,Php,我看过这个网站,发现了一些合并数组的例子,但老实说,我不确定哪一个适合我 我很难合并这些数组。我尝试了数组合并和数组合并,但我没有任何运气 我需要的是一个输出如下的单个数组: Array ( [0] => Array ( [UnitNo] => 91 [Name] => Receiving [ActivityNo] => [Active] => 2

我看过这个网站,发现了一些合并数组的例子,但老实说,我不确定哪一个适合我

我很难合并这些数组。我尝试了数组合并和数组合并,但我没有任何运气

我需要的是一个输出如下的单个数组:

Array
(
    [0] => Array
        (
            [UnitNo] => 91
            [Name] => Receiving
            [ActivityNo] =>
            [Active] => 2
            [CallNo] =>
            [CallStatusNo] =>
            [Assigned] =>
            [UnitId] => 2
        )
    [1] => Array
        (
            [UnitNo] => 83
            [Name] => Shipping
            [ActivityNo] =>
            [Active] =>
            [CallNo] =>
            [CallStatusNo] =>
            [Assigned] =>
            [UnitId] => 1
        )
)
这两个数组是我需要根据
UnitId
合并在一起的,它应该形成一个完整的数组,就像上面的数组一样。我只是不知道怎么做。如果有人能给我指点方向,我将不胜感激

// Array #1
Array
(
    [0] => Array
        (
            [UnitId] => 2
            [UnitNo] => 91
            [Name] => Receiving
            [Active] => 4
        )

    [1] => Array
        (
            [UnitId] => 1
            [UnitNo] => 83
            [Name] => Shipping
            [Active] => 4
        )
)
// Array #2

Array
(
    [0] => Array
        (
            [UnitId] => 2
            [ActivityNo] => 1
            [CallNo] => 1
            [CallStatusNo] => 1
            [Assigned] => 1
        )

    [1] => Array
        (
            [UnitId] => 1
            [ActivityNo] => 11
            [CallNo] => 2
            [CallStatusNo] => 1
            [Assigned] => 1
        )

)

在这种情况下,您不能只使用php函数并将其称为好函数——您必须自己做一些自定义逻辑

这是可行的,但前提是
$array1
$array2
在每个索引中都有相同的项

$array1;
$array2;
$mergedArray;

for ($i=0; $i++; $i < count($array1) - 1) {
    //first add all the values from array1
    $mergedArray[$i] = $array1[$i];

    foreach($array2[$i] as $array2Key=>$array2Value){
        //now check for missing key/values that are in array2 but not in array1
        if (array_key_exists($array2Key, $array1[$i]) == false) {
            // the key does not exist in array1, so add it to mergedArray
            $mergedArray[$i][$array2Key] = $array2Value;
        }
    }
}
$array1;
$array2;
$Darray;
对于($i=0;$i++;$i$array2Value){
//现在检查是否缺少array2中但不在array1中的键/值
如果(array_key_存在($array2Key,$array1[$i])==false){
//该键在array1中不存在,因此将其添加到mergedArray
$mergedArray[$i][$array2Key]=$array2Value;
}
}
}

如果您的数组是关联数组,并由唯一值索引,则会更安全。

您应该查看文档:@demonofnight,谢谢。如果array_merge对我有效,那么我将进一步研究该函数。我只是想确定它能满足我的需要。谢谢谢谢你的回答,BDF