Php 如何合并2个数组-将一个数组嵌套到另一个数组中

Php 如何合并2个数组-将一个数组嵌套到另一个数组中,php,arrays,merge,Php,Arrays,Merge,我有一个数组: $form['info'] = array(...); $form['container'] = array(...); 我还有另一个数组: $container['item_1'] = array(...); $container['item_2'] = array(...); 我想得到一个这样的结构: $form['info'] $form['container']['...'] $form['container']['item_1'] $form['container'

我有一个数组:

$form['info'] = array(...);
$form['container'] = array(...);
我还有另一个数组:

$container['item_1'] = array(...);
$container['item_2'] = array(...);
我想得到一个这样的结构:

$form['info']
$form['container']['...']
$form['container']['item_1']
$form['container']['item_2']

如何合并$form和$container数组来实现这一点?我需要将$container数组中的所有项嵌套/添加到$form['container']变量中
array\u merge()
似乎不是这样工作的。

这应该可以处理它:

foreach($container as $key => $value){
    $form['container'][$key] = $value;
}
  • 迭代您的
    $container
    ,并获取其键值对
  • 将它们附加到您的
    $form
  • 用这个

    <?php
    $form["info"] = array('info');
    $form["container"] = array('container');
    $container['item_1'] = array('1');
    $container['item_2'] = array('2');
    
    foreach($container as $k=>$f)
    {
        $form['container'][$k] = $f;
    }
    print_r($form);
    ?>
    
    
    
    为什么
    array\u merge()
    不工作?据我所知,您的任务是将
    $form['container']
    $container
    合并
    array\u merge()
    可以处理此问题。


    您在尝试合并时(确切地说)使用了什么代码?你能提供源代码吗?你是如何使用
    array\u merge()
    ?源代码太复杂了,所以我做了这个简单的例子。@dr\u debug array\u merge($form,$container)$表单['container']['item_1']将为您提供包含container和item1值的合并数组。对吗?谢谢,这很有效。我认为这种合并没有原生php函数。是的,这是一个合适的解决方案。
    $form['container'] = array_merge($form['container'], $container);