php合并数组中的数据,如果键值相等其值相加的实现办法
php合并数组中的数据,如果键值相等其值相加要怎么实现呢?
如果是两个数组的实现代码如下:
如果是两个数组的实现代码如下:
/*
* 合并数据,如果键值相等其值相加
* @param array $descs
* @param array $json_wares
*/
public static function getArrayMerge($descs, $json_wares)
{
if (is_array($descs) && is_array($json_wares)) {
$arrayMerge = array();
foreach ($json_wares as $key=>$value) {
if (array_key_exists($key, $descs)) {
$arrayMerge[$key] = $value + $descs[$key];
unset($descs[$key]);
} else {
$arrayMerge[$key] = $value;
}
}
return $arrayMerge+$descs;
} else {
return false;
}
}
如果是一个二维数组
function comm_sumarrs($arr){
$item = array();
foreach($arr as $key=>$value){
foreach($value as $k=>$v){
if(isset($item[$k])){
$item[$k] = $item[$k] +$v;
}else{
$item[$k] = $v;
}
}
}
arsort($item);
return $item;
}