多次元配列で特定のキー=>値の数を取得しようとしています。私が持っているもの、つまり結果は正しいですが、未定義のインデックス通知を取り除くことができないようです。
$total_arr = array();
foreach($data['user'] as $ar) {
$total_arr[$ar['city']]++;
}
print_r($total_arr);
何か案は?foreach ループ内で isset を試しましたが、喜びはありません...
多次元配列で特定のキー=>値の数を取得しようとしています。私が持っているもの、つまり結果は正しいですが、未定義のインデックス通知を取り除くことができないようです。
$total_arr = array();
foreach($data['user'] as $ar) {
$total_arr[$ar['city']]++;
}
print_r($total_arr);
何か案は?foreach ループ内で isset を試しましたが、喜びはありません...
$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);
インデックスが操作される前に初期化されていない場合、PHP はその通知をスローします。シンボルを使用し@
て通知を抑制するかisset()
、インデックス値を初期化するブロックと組み合わせて使用します。