2011-01-25 65 views
0

可能是一个简单的给你:PHP数学加法数值在2个关联数组

我有2个阵列

$array1 = array(
    'foo' => 5, 
    'bar' => 10, 
    'baz' => 6 
); 

$array2 = array(
    'x' => 100, 
    'y' => 200, 
    'baz' => 30 
); 

我希望通过上述两种组合获得第三阵列,它应该是:

$result_array = array(
    'foo' => 5, 
    'bar' => 10, 
    'baz' => 36, 
    'x' => 100, 
    'y' => 200, 
); 

是否有任何内置的“阵列 - 的方式”来做到这一点,或者我会写我自己的功能? 感谢

回答

2
$resultArray = $array1; 
foreach($array2 as $key => $value) { 
    if (isset($resultArray[$key])) { 
     $resultArray[$key] += $value; 
    } else { 
     $resultArray[$key] = $value; 
    } 
} 
-2

你需要

$newArray = $array1; 
foreach($array2 as $key => $value) { 
    if(array_key_exists($key, $newArray)){ 
    $newArray[$key] += $value; 
    }else{ 
    $newArray[$key] = $value; 
    } 
} 
+0

OP是要求值的时候添加的键匹配 – 2011-01-25 21:29:04

+0

是啊刚刚注意到,我srry .. – bharath 2011-01-25 21:29:55

+0

对不起,这吃了baz – SIndhu 2011-01-25 21:32:15

1

有这个没有内置的功能,你必须自己编写。