Thi*_*ili 1 php foreach associative-array multidimensional-array
Array
(
[Sum_1] => Array
(
[0] => Array
(
[e] => 1000001
[u] => Test1
[a] => 775.00
)
[1] => Array
(
[e] => 26
[u] => Test2
[a] => 555.00
)
)
[Sum_2] => Array
(
[0] => Array
(
[e] => 1000001
[u] => Test1
[a] => 110.00
)
)
[Sum_3] => Array
(
[0] => Array
(
[e] => 1000001
[u] => Test1
[a] => 444.00
)
)
)
Run Code Online (Sandbox Code Playgroud)
我想将上面的数组转换为类似下面的内容.我是否需要使用foreach或者array_sum可以这样做吗?
Array
(
[Sum_1] => 1330.00
[Sum_2] => 110.00
[Sum_3] => 444.00
)
Run Code Online (Sandbox Code Playgroud)
(我想得到名为Sum_1,Sum_2,Sum_3的每个部分的元素[a]的总和)感谢您的帮助!
你可以这样做:
$ret = array_map(function($val) {
return array_sum(array_map(function($val) {
return $val['a'];
}, $val));
}, $array);
Run Code Online (Sandbox Code Playgroud)
在PHP 5.4之前:
function a_getter($val) {
return $val['a'];
}
$ret = array_map(function($val) {
return array_sum(array_map('a_getter', $val));
}, $array);
Run Code Online (Sandbox Code Playgroud)