PHP 通过相同的键合并(添加)两个数组

PHP Merge (Add) Two Arrays by Same Key

我有两个数组。

$a = array('a' => 2, 'b' => 5, 'c' => 8);
$b = array('a' => 3, 'b' => 7, 'c' => 10);

我想合并这两个数组并得到以下结果。

$c = array('a' => 5, 'b' => 12, 'c' => 18);

存档的最简单方法是什么?

谢谢!

$c = array();
foreach ($a as $k => $v) {
    if (isset($b[$k])) {
        $c[$k] = $b[$k] + $v;
    }
}

您需要检查两个数组中是否存在键。

如评论中所述,循环遍历数组即可。

$a = array('a' => 2, 'b' => 5, 'c' => 8);
$b = array('a' => 3, 'b' => 7, 'c' => 10);
$c = array();
foreach($a as $index => $item) {
  if(isset($b[$index])) {
    $new_value = $a[$index] + $b[$index];
    $c[$index] = $new_value;
  }
}

你可以通过foreach循环轻松做到这一点,请看下面的例子

$c = array();
$a = array('a' => 2, 'b' => 5, 'c' => 8);
$b = array('a' => 3, 'b' => 7, 'c' => 10);
foreach ($a as $key => $value) {
    $tmp_value = $a[$key] + $b[$key];
    $c[$key] = $tmp_value;
}
print_r($c);

您可以简单地使用 foreach 作为

foreach($b as $key => $value){
    if(in_array($key,array_keys($a)))
        $result[$key] = $a[$key]+$value;

}