2015-05-15 77 views
-2

考虑以下的数组:如何在php中添加具有通用索引的两个数组的值?

阵列1与内容:

index1 value2 
a   5 
b   6 
c   2 

AND阵列2与内容:

index2 value2 
a   4 
b   2 

我需要一个阵列3,它应该是在上述2的总和阵列。 喜欢的东西:

index  value 
a   9 
b   8 
c   2 
+0

PLE以正确的方式格式化你的问题得到答案 –

+1

你试过什么来达到你的目标? – Rizier123

+0

我已格式化,请查看问题.. – saurabh

回答

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; 
    } 
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) 
} 
相关问题