PHPのfile_get_contentsで404エラーを検知する

シェアする

  • このエントリーをはてなブックマークに追加
  • Evernoteに保存Evernoteに保存

PHPのfile_get_contents関数を使ってURL先のコンテンツを取得する際に、取得先にファイルがない(404エラーであった)場合の処理のサンプル・コードです。URLが存在するか調べるだけであれば、HTTPヘッダーを調べる方が軽いです。

<?php
$sUrl = "http://your-url-to-check.com/"; //取得したいURL
if( ( $sResponce = @file_get_contents($sUrl) ) == FALSE ){
// HTTPステータスコードを取得する
list($version,$status_code,$msg) = explode(' ',$http_response_header[0], 3);
// ステータスコードごとの処理
switch($status_code) {
case 404:
return "404: Not found.";
break;
default:
return "ERROR {$status_code}";
break;
}
}
else{
//正常にfile_get_contentsで取得できた場合の処理
return "OK: {$sResponce}";
break;
}
?>

■参考:BeTwittered, PHP and file_get_contents | robert.arlesnet.com

関連記事

ロリポップでfile_get_contentsが使えなくなった場合の確認箇所... 現象ですが、ロリポップで、下記スクリプトを実行すると"Warning: file_get_contents() file-access is disabled"エラーが出てしまいます。 ■スクリプト
PHPのSplFileObjectでURLを指定してCSVを読み込む... URLをSplFileObjectで使うにはNoRewindIteratorクラスも一緒に使う $url = 'http://sample.com/data.csv'; //オンライン上のCSVファイル $file = new NoRewindIterator( new SplFile...
PHPでPOSTした結果を取得する関数:フォームの動作を模擬する... PHPのfile_get_contents関数のPOST版ユーザ関数"file_post_contents()"を作りました。 このPHPのユーザ関数で、フォームからmethodをPOSTでリクエストしたのと同じ結果が簡単に得られます。 RESTを使ったサービスを利用する際の簡易的な実装にど...

スポンサーリンク
レクタングル(大)広告

シェアする

  • このエントリーをはてなブックマークに追加
  • Evernoteに保存Evernoteに保存
スポンサーリンク
レクタングル(大)広告