合并数组内的数组

时间:2016-10-05 12:29:01

标签: php arrays multidimensional-array array-merge

我要合并2个数组。第一个数组是多维的,第二个数组是单个数组:

$a = array(
    array('id'=>'1', 'name'=>'Mike'),
    array('id'=>'2', 'name'=>'Lina'),
);

$b = array('id'=>'3', 'name'=>'Niken');

如何合并2个数组以获得相同的数组深度?

4 个答案:

答案 0 :(得分:7)

如果你想要的是这个:

array(
    array('id'=>'1', 'name'=>'Mike'),
    array('id'=>'2', 'name'=>'Lina'),
    array('id'=>'3', 'name'=>'Niken')
)

您可以将第二个作为新元素添加到第一个元素:

$one[] = $two;

答案 1 :(得分:1)

只需使用空维度运算符附加第二个数组。

$one = array(
    array('id'=>'1', 'name'=>'Mike'),
    array('id'=>'2', 'name'=>'Lina')
);

$two = array('id'=>'3', 'name'=>'Niken');

$one[] = $two;

但如果你想要合并独特的项目,你需要做这样的事情:

if(false === array_search($two, $one)){
    $one[] = $two;
}

答案 2 :(得分:1)

您可以使用当前数组的数组推送轻松完成此操作,我修改了您的代码以便它可以正常工作

<?php
  $myArray = array(
    array('id' => '1',  'name' => 'Mike'),
    array('id' => '2',  'name '=> 'Lina')
  );
  array_push($myArray, array('id'=>'3', 'name'=>'Niken'));
  // Now $myArray has all three of the arrays
  var_dump($myArray);
?>

如果有帮助,请告诉我

答案 3 :(得分:0)

要将任何内容插入数组,您只需使用push over index($ array [] = $ anything;)或array_push()函数。您的案例可以使用这两种方法。