想要获得多维数组中特定key =>值的计数。我的工作,即结果是正确的,但我似乎无法摆脱未定义的索引通知。
$total_arr = array();
foreach($data['user'] as $ar) {
$total_arr[$ar['city']]++;
}
print_r($total_arr);
有什么想法吗?我在foreach循环中尝试了isset,但没有快乐......
答案 0 :(得分:4)
$total_arr = array();
foreach($data['user'] as $ar) {
if(array_key_exists($ar['city'],$total_arr) {
$total_arr[$ar['city']]++;
} else {
$total_arr[$ar['city']] = 1; // Or 0 if you would like to start from 0
}
}
print_r($total_arr);
答案 1 :(得分:3)
如果您的索引在被操作之前尚未初始化,PHP将抛出该通知。使用@
符号来禁止通知,或者将isset()
与将为您初始化索引值的块结合使用。