欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php二维数组雷同键名相加

程序员文章站 2022-06-15 17:37:49
...
php二维数组相同键名相加

Array
(
[uid] => 19
[pid] => Array
(
[0] => 91
[1] => 81
)

[price] => Array
(
[0] => 6
[1] => 14
)

[pnum] => Array
(
[0] => 1
[1] => 1
)

)


求相同键名的值相加如(price 的相加结果) 数组条数不确定
------解决方案--------------------
$ar = Array(
'uid' => 19,
'pid' => Array (
0 => 91,
1 => 81,
),
'price' => Array (
0 => 6,
1 => 14,
),
'pnum' => Array (
0 => 1,
1 => 1,
),
);

$r = array_map(function($t) {
return is_array($t) ? array_sum($t) : $t;
}, $ar);
print_r($r);
Array
(
[uid] => 19
[pid] => 172
[price] => 20
[pnum] => 2
)


------解决方案--------------------
直接用foreach也可以。
$ar = Array(
'uid' => 19,
'pid' => Array (
0 => 91,
1 => 81,
),
'price' => Array (
0 => 6,
1 => 14,
),
'pnum' => Array (
0 => 1,
1 => 1,
),
);
foreach($ar as $k=>$v){
$arr[$k] = is_array($v) ? array_sum($v) : $v;
}
print_r($arr);
php二维数组雷同键名相加

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频