如何对数组关联中相同键的值求和

How to sum values of same key in array associative

在尝试对关联数组中相同键的值求和时,我做错了。我以为这会很容易,但事实并非如此,所以请...

我期待以下结果:

 1 -->(7) 
2 -->(14)

这是数组:

 $array = array( 1=>4, 2=>8, 1=>3, 2=>6, );

这是我从那以后的尝试:

$sum= array();

foreach ($array as $key => $value){ $sum[$key] += $value;} print_r($sum);

无论如何,根本没有执行循环,因为它返回的是这个结果,

Array ( [1] => 3 [2] => 6 );

还有一个错误,

 Undefined offset: 1 

我想也许有一个 PHP 函数来处理它,但我很乐意提供任何帮助。

你想要的是不可能的。数组不能有重复的键:

php > $arr = array(1=>2, 1=>500);
php > var_dump($arr);
array(1) {
  [1]=>
  int(500)  // hey! where'd "2" go?
}

如果您想在一个键中存储多个值,则该键必须指向一个数组:

$arr = array();
$arr[1] = array(1, 500);
var_dump($arr);
php > var_dump($arr);
array(1) {
  [1]=>
  array(2) {
    [0]=>
    int(1)
    [1]=>
    int(500)
  }
}