file_get_contentsと$http_response_headerについて

file_get_contentsを使って簡単なサイトの死活チェックプログラムを書いて、チェックするサイトの中に1つ存在しない適当なドメイン名のURLを含めたところ、$http_response_headerの最初のステータスが何度やっても「200 OK」。

いくつか参考にしたサイトには存在しないドメインの場合はNULLがセットされるって書いてあったんですが、どうも違うみたいです。試しにfile_get_contentsの前で$http_response_headerをunsetしてみたところ、正常?に動きました。

どうやらNULLがセットされるのではなく、$http_response_headerには何もセットされないが正解のようです。1度しかfile_get_contentsを呼び出さないならNULLがセットされたみたいに見えますが、ループの中でfile_get_contentsを呼び出して、その途中で存在しないドメイン名のURLを渡すと、$http_response_headerの中身は1つ前のURLの結果が残ったままになります。