如何使用 php 获取具有相同键的关联数组的总和
how to get sum of associative array with same key using php
我有一个 PHP 数组如下。
我试图获取相同数组键的值的总和。
我想使用 PHP 获取关联数组中每个关键元素的总和。如果有人可以帮助我,那么它对我更有帮助。先感谢您。
我的代码是这样的:
$arr = array();
foreach ( $search as $srch_val => $srch_row){
foreach ($srch_row as $key => $val) {
if(array_key_exists($key, $arr)){
$arr[$key] = $arr[$key] + array_sum($val);
} else {
$arr[$key] = array_sum($val);
}
}
}
我的数组是这样的:
Array(
[RED] => Array
(
[AP] => 2
)
[BLUE] => Array
(
[OR] => 5
[GR] => 3
[PL] => 2
[BL] => 1
)
[YELLOW] => Array
(
[LI] => 7
[OR] => 4
[GR] => 3
[PL] => 4
)
[GREEN] => Array
(
[GR] => 3
[AP] => 2
[PL] => 1
[LI] => 2
)
[BLACK] => Array
(
[BL] => 4
[GR] => 4
[LI] => 3
)
[VIOLET] => Array
(
[PL] => 3
[GR] => 2
[LI] => 1
)
)
Array
(
[ORANGE] => Array
(
[AV] => 5
[BL] => 6
[OR] => 2
[LI] => 3
)
[GREEN] => Array
(
[LI] => 5
[GR] => 6
[AP] => 2
[CB] => 3
)
[YELLOW] => Array
(
[LI] => 6
[PL] => 5
[OR] => 2
)
)
我想得到每个关键元素的总和
我的输出如下:
[AP] => 6
[OR] => 13
[GR] => 21
[PL] => 15
[BL] => 11
[LI] => 28
[AV] => 5
[CB] => 3
但我得到的结果是所有键都包含零。
$val
是一个数字而不是数组,所以去掉 array_sum
并只使用 $val
:
$arr = array();
foreach ($search as $srch_val => $srch_row) {
foreach ($srch_row as $key => $val) {
if(array_key_exists($key, $arr)) {
$arr[$key] = $arr[$key] + ($val);
} else {
$arr[$key] = ($val);
}
}
}
我有一个 PHP 数组如下。 我试图获取相同数组键的值的总和。 我想使用 PHP 获取关联数组中每个关键元素的总和。如果有人可以帮助我,那么它对我更有帮助。先感谢您。 我的代码是这样的:
$arr = array();
foreach ( $search as $srch_val => $srch_row){
foreach ($srch_row as $key => $val) {
if(array_key_exists($key, $arr)){
$arr[$key] = $arr[$key] + array_sum($val);
} else {
$arr[$key] = array_sum($val);
}
}
}
我的数组是这样的:
Array(
[RED] => Array
(
[AP] => 2
)
[BLUE] => Array
(
[OR] => 5
[GR] => 3
[PL] => 2
[BL] => 1
)
[YELLOW] => Array
(
[LI] => 7
[OR] => 4
[GR] => 3
[PL] => 4
)
[GREEN] => Array
(
[GR] => 3
[AP] => 2
[PL] => 1
[LI] => 2
)
[BLACK] => Array
(
[BL] => 4
[GR] => 4
[LI] => 3
)
[VIOLET] => Array
(
[PL] => 3
[GR] => 2
[LI] => 1
)
)
Array
(
[ORANGE] => Array
(
[AV] => 5
[BL] => 6
[OR] => 2
[LI] => 3
)
[GREEN] => Array
(
[LI] => 5
[GR] => 6
[AP] => 2
[CB] => 3
)
[YELLOW] => Array
(
[LI] => 6
[PL] => 5
[OR] => 2
)
)
我想得到每个关键元素的总和
我的输出如下:
[AP] => 6
[OR] => 13
[GR] => 21
[PL] => 15
[BL] => 11
[LI] => 28
[AV] => 5
[CB] => 3
但我得到的结果是所有键都包含零。
$val
是一个数字而不是数组,所以去掉 array_sum
并只使用 $val
:
$arr = array();
foreach ($search as $srch_val => $srch_row) {
foreach ($srch_row as $key => $val) {
if(array_key_exists($key, $arr)) {
$arr[$key] = $arr[$key] + ($val);
} else {
$arr[$key] = ($val);
}
}
}