【问题标题】:Merge two associative arrays by pushing their values into a new array [closed]通过将它们的值推入新数组来合并两个关联数组[关闭]
【发布时间】:2015-09-22 19:21:39
【问题描述】:

我有以下两个数组:

$arrFoo = array(
    'a' => 12,
    'b' => 17,
);
$arrBar = array(
    'a' => 9,
    'c' => 4,
);

我希望得到的数组看起来像这样:

$arrResult = array(
    'a' => array ( 12, 9 ),
    'b' => array ( 17 ),
    'c' => array ( 4 ),
);

是否有一个原生的 PHP 函数可以在不使用 foreach 的情况下实现这一点?

【问题讨论】:

  • 编辑问题比投反对票更好,因为答案具有不同的数组结构:)))

标签: php arrays merge


【解决方案1】:

你可以使用array_merge_recursive()方法

$arrResult = array_merge_recursive($arrFoo, $arrBar);

print_r($arrResult);

结果将是:

Array
(
    [a] => Array
        (
            [0] => 12
            [1] => 9
        )

    [b] => 17
    [c] => 4
)

【讨论】:

  • 最欢迎您@user2635541 :)
【解决方案2】:
<?php

$arrFoo = array(
    'a' => 12,
    'b' => 17,
);
$arrBar = array(
    'a' => 9,
    'c' => 4,
);

$arrResult = array_merge_recursive($arrFoo, $arrBar);

var_dump($arr);

?>

使用 array_merge_recursive,您可以按照您要求的方式合并数组。 http://php.net/manual/en/function.array-merge-recursive.php

【讨论】:

  • 你的结果不是 OP 想要的
  • @Djip 非常感谢!我从没想过会这么容易。 :)
猜你喜欢
  • 1970-01-01
  • 2020-03-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-27
  • 1970-01-01
  • 1970-01-01
  • 2012-10-21
相关资源
最近更新 更多