simplexml_load_fileにハマった話
昨日書いた記事のような感じでRSS取得作業を行っていたのですが、
業務に必要なページが取得できずハマりました。
まだ解決できていないのですが、調べたことやったことを書きます。
php.iniの確認
allow_url_fopen = on
この項目がoffになっていると取得できません(今回の場合は特定サイトからできないだけなので関係なかった)
$http_response_headerを調べる
$http_response_header =null $data = file_get_contents('サイト名'); var_dump($http_response_header)
詳細なエラーメッセージが取得できます。
最初にnullを代入しないと成功したときの情報が残っていて表示されてしまうケースが有るみたいです。今回は500 Internal Server Errorでした。
ソースの構造を調べる
取得段階ではなくパースで躓いたならここかも$_SERVERを調べる
サーバ情報や実行時の環境情報を取得できるので、解決のヒントが見つかるかも解決でき次第、原因を追記します
同URLの違うページからは取得できたりするから余計にわからない。