在尝试对关联数组中相同的键值求和时,我没有做到这一点。我认为这将是一项轻松的任务,但事实并非如此......
我期待以下结果:
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($总和);
无论如何,根本没有进行循环,因为它返回了这个结果,
Array ( [1] => 3 [2] => 6 );
并出错,
Undefined offset: 1
我想也许有一个PHP函数来处理它,但我很乐意提供任何帮助。
答案 0 :(得分:0)
你想要的是不可能的。数组不能有重复的键:
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)
}
}