すべてのエラー報告をオンにして、いくつかの未定義のインデックスをクリーンアップしました。これは、作成中のアプリをよりきちんとしたものにするためです。奇妙な動作に気付きました:
次の配列があるとします。$a = array('test' => false, 'foo' => 'bar')
そうすればif ($a['nothere'])ちゃんと通知が来ますUndefined index: nothere。
しかし、そうするとif ($a['test']['nothere'])、通知が届きません。まったく。のインデックスnothereではないことは間違いありませんが$a['test']。
今、私がそうする$a['test'] = array('baz' => 'poof')と、実行すると通知if ($a['test']['nothere']) がスローされます。
未定義のインデックス チェックでは、空の配列のインデックスはチェックされませんか? これは PHP 5.2.8 上にあります。