Php 从数组计算数据
我有这个阵列:Php 从数组计算数据,php,arrays,Php,Arrays,我有这个阵列: Array ( [0] => Array ( [0] => Array ( [id] => 1 [kw] => 45 [anzahl_betten] => 100 [zugange_dauerpflege] => 1 [zugange_ku
Array
(
[0] => Array
(
[0] => Array
(
[id] => 1
[kw] => 45
[anzahl_betten] => 100
[zugange_dauerpflege] => 1
[zugange_kurzzeitpflege] => 1
[abgange_dauerpflege_sterbefalle] => 1
[abgange_dauerpflege_auszuge] => 1
[abgange_kurzzeitpflege] => 1
[wechsel_kurz_dauer] => 1
[anzahl_tage] => 1
[geplante_einzuge] => 5
[hID] => 9
)
[1] => Array
(
[id] => 11
[kw] => 46
[anzahl_betten] => 100
[zugange_dauerpflege] => 0
[zugange_kurzzeitpflege] => 0
[abgange_dauerpflege_sterbefalle] => 0
[abgange_dauerpflege_auszuge] => 0
[abgange_kurzzeitpflege] => 0
[wechsel_kurz_dauer] => 0
[anzahl_tage] => 0
[geplante_einzuge] => 1
[hID] => 9
)
[2] => Array
(
[id] => 12
[kw] => 47
[anzahl_betten] => 100
[zugange_dauerpflege] => 1
[zugange_kurzzeitpflege] => 1
[abgange_dauerpflege_sterbefalle] => 0
[abgange_dauerpflege_auszuge] => 1
[abgange_kurzzeitpflege] => 0
[wechsel_kurz_dauer] => 0
[anzahl_tage] => 0
[geplante_einzuge] => 0
[hID] => 9
)
)
[1] => Array
(
[0] => Array
(
[id] => 19
[kw] => 45
[anzahl_betten] => 100
[zugange_dauerpflege] => 1
[zugange_kurzzeitpflege] => 0
[abgange_dauerpflege_sterbefalle] => 1
[abgange_dauerpflege_auszuge] => 0
[abgange_kurzzeitpflege] => 1
[wechsel_kurz_dauer] => 0
[anzahl_tage] => 1
[geplante_einzuge] => 0
[hID] => 11
)
[1] => Array
(
[id] => 20
[kw] => 46
[anzahl_betten] => 100
[zugange_dauerpflege] => 0
[zugange_kurzzeitpflege] => 2
[abgange_dauerpflege_sterbefalle] => 3
[abgange_dauerpflege_auszuge] => 0
[abgange_kurzzeitpflege] => 2
[wechsel_kurz_dauer] => 3
[anzahl_tage] => 0
[geplante_einzuge] => 2
[hID] => 11
)
[2] => Array
(
[id] => 21
[kw] => 47
[anzahl_betten] => 99
[zugange_dauerpflege] => 0
[zugange_kurzzeitpflege] => 0
[abgange_dauerpflege_sterbefalle] => 1
[abgange_dauerpflege_auszuge] => 2
[abgange_kurzzeitpflege] => 0
[wechsel_kurz_dauer] => 0
[anzahl_tage] => 1
[geplante_einzuge] => 2
[hID] => 11
)
)
[2] => Array
(
[0] => Array
(
[id] => 22
[kw] => 45
[anzahl_betten] => 50
[zugange_dauerpflege] => 0
[zugange_kurzzeitpflege] => 0
[abgange_dauerpflege_sterbefalle] => 0
[abgange_dauerpflege_auszuge] => 1
[abgange_kurzzeitpflege] => 1
[wechsel_kurz_dauer] => 0
[anzahl_tage] => 0
[geplante_einzuge] => 0
[hID] => 12
)
[1] => Array
(
[id] => 23
[kw] => 46
[anzahl_betten] => 51
[zugange_dauerpflege] => 0
[zugange_kurzzeitpflege] => 0
[abgange_dauerpflege_sterbefalle] => 0
[abgange_dauerpflege_auszuge] => 0
[abgange_kurzzeitpflege] => 0
[wechsel_kurz_dauer] => 0
[anzahl_tage] => 0
[geplante_einzuge] => 0
[hID] => 12
)
[2] => Array
(
[id] => 24
[kw] => 47
[anzahl_betten] => 51
[zugange_dauerpflege] => 1
[zugange_kurzzeitpflege] => 1
[abgange_dauerpflege_sterbefalle] => 1
[abgange_dauerpflege_auszuge] => 1
[abgange_kurzzeitpflege] => 1
[wechsel_kurz_dauer] => 1
[anzahl_tage] => 1
[geplante_einzuge] => 1
[hID] => 12
)
)
)
“kw”是周数,“hID”是房子的ID。
现在我想把每户人家的“kw”加在一起,加上所有的“anzahl_betten”、“zugange_Dauerplege”…xt。
因此,最后我只想为每千瓦有一个数组条目(所有的房屋都被求和)。
例如:
我怎么会意识到这一点
$final = array();
foreach($your_array as $index1 => $sub_array1)
{
foreach($sub_array1 as $index2 => $final_sub_array)
{
// I think you don't care about $index1 and $index2 ?
unset($final_sub_array['id']); // nothing to do whith this one ?
$kw = $final_sub_array['kw'];
unset($final_sub_array['kw']);
unset($final_sub_array['hID']); // nothing to do whith this one ?
// Now, $final_sub_array contains only keys 'anzahl_betten' .. 'geplante_einzuge'
foreach($final_sub_array as $house => $value)
{
if(isset($final[$kw][$house]))
$final[$kw][$house] += $value;
else
$final[$kw][$house] = $value;
}
}
}
$final的键是“kw”,每个“kw”的值是一组房屋。我没有测试它。可以吗?非常感谢!这是工作,因为它应该!
$final = array();
foreach($your_array as $index1 => $sub_array1)
{
foreach($sub_array1 as $index2 => $final_sub_array)
{
// I think you don't care about $index1 and $index2 ?
unset($final_sub_array['id']); // nothing to do whith this one ?
$kw = $final_sub_array['kw'];
unset($final_sub_array['kw']);
unset($final_sub_array['hID']); // nothing to do whith this one ?
// Now, $final_sub_array contains only keys 'anzahl_betten' .. 'geplante_einzuge'
foreach($final_sub_array as $house => $value)
{
if(isset($final[$kw][$house]))
$final[$kw][$house] += $value;
else
$final[$kw][$house] = $value;
}
}
}