考虑以下数组:
包含内容的数组1:
index1 value2
a 5
b 6
c 2
包含内容的数组2:
index2 value2
a 4
b 2
我需要一个数组3,它应该是上述2个数组的总和。 类似的东西:
index value
a 9
b 8
c 2
答案 0 :(得分:1)
此功能将是您所需要的:
function array_merge_with_sum_values(array $array1, array $array2){
$finalArray = array_merge($array1, $array2);
$keys = array_keys($finalArray);
foreach($keys as $key){
if(isset($array1[$key]) && isset($array2[$key])){
$finalArray[$key] = $array1[$key] + $array2[$key];
}
}
return $finalArray;
}
答案 1 :(得分:0)
也许这可以帮到你:
$array_first = ['a'=>5,'b'=>6,'c'=>2];
$array_second = ['a'=>4,'b'=>2];
function sum_array($array_first,$array_second){
$array_result = [];
foreach ($array_first as $key => $value) {
if(isset($array_second[$key])){
$array_result[$key] = $array_second[$key] + $array_first[$key];
}else{
$array_result[$key] = $array_first[$key];
}
}
return $array_result;}
var_dump(sum_array($array_first,$array_second));
结果:
array(3) {
["a"]=>
int(9)
["b"]=>
int(8)
["c"]=>
int(2)
}