再次请教一个数组求和的问题
$array = array(0 =>array(
'aaa' => '111',
'bbb' => '222',
'ccc' => '333',
),
1 =>array(
'bbb' => '222',
'ccc' => '333',
'aaa' => '111',
),
)
我需要的结果是:
array(
'aaa' => '222',
'bbb' => '444',
'ccc' => '666',
)
也就是说,$array数组中重复的键名的值相加,并且最后要排除重复的数组。
请教该如何做? 遍历算就是了,另外你这个明明是数字运算,你为什么值用的是字符串呢?
排除重复?那你的例子中的0和1两个数组算不算重复呢? 数组有key的话,同样也是列求和,key值一样的相加,参见我给你的列求和方法
<?php
$array = array(
0 =>array(
'aaa' => '111',
'bbb' => '222',
'ccc' => '333',
),
1 =>array(
'bbb' => '222',
'ccc' => '333',
'aaa' => '111',
),
);
$newArray = array();
foreach($array as $subArray) {
foreach($subArray as $key=>$value) {
if (isset($newArray[$key])) {
$newArray[$key] += $value;
} else {
$newArray[$key] = $value;
}
}
}
页:
[1]