Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/246.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
检查数组值是否已更改为foreach循环php?_Php_Arrays - Fatal编程技术网

检查数组值是否已更改为foreach循环php?

检查数组值是否已更改为foreach循环php?,php,arrays,Php,Arrays,我们有这样一个数组: Array( [0]=>Array([HospitalName]=>'h1' [count]=>23) [1]=>Array([HospitalName]=>'h1' [count]=>25) [2]=>Array([HospitalName]=>'h1' [count]=>40) [3]=>Array([HospitalName]=>'h1' [count]=>50) [4]=>Array([H

我们有这样一个数组:

Array(
[0]=>Array([HospitalName]=>'h1' [count]=>23)
[1]=>Array([HospitalName]=>'h1' [count]=>25)
[2]=>Array([HospitalName]=>'h1' [count]=>40)
[3]=>Array([HospitalName]=>'h1' [count]=>50)
[4]=>Array([HospitalName]=>'h1' [count]=>23)
[5]=>Array([HospitalName]=>'h2' [count]=>44)
[6]=>Array([HospitalName]=>'h2' [count]=>52)
[7]=>Array([HospitalName]=>'h2' [count]=>49)

)
我想计算h1和h2的计数值之和

sum of => h1[count]=>161
sum of => h2[count]=>145

如何使用PHP?

您可以使用另一个容器来保存该数组中这些值的总和:

$sum = array();
foreach($array as $values) {
    // simple initialization
    if(!isset($sum[$values['HospitalName']])) {
        $sum[$values['HospitalName']] = 0;
    }
    $sum[$values['HospitalName']] += $values['count'];
}
基本上,您只需使用
HospitalName
作为键,然后每次循环中对应的键匹配时,它都会将其相加到指定的医院名称


使用
foreach
循环:

 $sums = [];

 foreach ($myArray as $values) {
    if (isset($sums[$values['HospitalName']])) {
        $sums[$values['HospitalName']] += $values['count'];
    } else {
        $sums[$values['HospitalName']] = $values['count'];
    }
 }

欢迎来到堆栈溢出。请花几分钟读一读。在您的具体案例中,您迄今为止尝试了什么?请提供一些示例代码。