Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP数组';I don’我不能如愿工作_Php_Arrays_Merge - Fatal编程技术网

PHP数组';I don’我不能如愿工作

PHP数组';I don’我不能如愿工作,php,arrays,merge,Php,Arrays,Merge,所以基本上我有两个数组我想合并 array(1) { ["first"]=> array(1) { ["second"]=> array(0) { } } } array(1) { ["second"]=> array(1) { ["third"]=> array(0) { } } } 这

所以基本上我有两个数组我想合并

array(1) { 
    ["first"]=>  
    array(1) { 
        ["second"]=>  
        array(0) { 
        } 
    } 
} 

array(1) { 
    ["second"]=>  
    array(1) { 
        ["third"]=>  
        array(0) { 
        } 
    } 
}
这就是我想要达到的结果

array(1) { 
    ["first"]=>  
    array(1) { 
        ["second"]=>  
        array(1) {
            ["third"]=>  
            array(0) { 
            } 
        } 
    }  
}
但是使用
$arr=array\u merge\u recursive($arr1,$arr2)
我得到以下输出:

array(2) { 
    ["first"]=>  
    array(1) { 
        ["second"]=>  
        array(0) { 
        } 
    } 
    ["second"]=>  
    array(1) { 
        ["third"]=>  
        array(0) { 
        } 
    } 
} 
据我所知,array\u merge\u recursive应该能满足我的需求,但显然不能。我的问题有什么解决办法


谢谢

阵列在相同的“级别”上合并。数组在同一级别上不重叠,一个顶级值为“first”,另一个为“second”。因此它产生了一个新的数组,两个数组都位于顶层

为了达到你想要的结果,你需要填写

array_merge_recursive($arr1['first'], $arr2)
然后它们匹配,并将与您的期望相等地结合在一起


您还可以编写一些函数,递归地遍历数组,找到数组匹配的级别,然后从那里调用
数组\u merge\u recursive

我认为他的实际数据要复杂得多。是的,现在我知道出了什么问题。恐怕您的代码片段对我的代码没有帮助,但我认为我(几乎)用另一种方式解决了它:)
array_merge_recursive($arr1['first'], $arr2)