ホームページ > php教程 > php手册 > リモートファイルが存在するかどうかを判断するPHP関数

リモートファイルが存在するかどうかを判断するPHP関数

WBOY
リリース: 2016-06-21 09:06:53
オリジナル
1338 人が閲覧しました

関数|存在するかどうか

リモートファイルが存在するかどうかを確認します。

/*
関数:remote_file_exists
関数:リモート ファイルが存在するかどうかを判断します
パラメーター: $url_file - リモート ファイル URL
戻り値: 存在する場合は true、存在しない場合は false を返します。存在するか、その他の理由で
*/
function remote_file_exists($url_file){
//入力を検出
$url_file = trim($url_file);
if (empty($url_file)) { return false }
$url_arr = parse_url; ($url_file);
if (!is_array($url_arr) || empty($url_arr)){ return false; }

//リクエストデータを取得
$host = $url_arr['host'];
$ path = $url_arr[' path'] ."?". $url_arr['query'];
$port = isset($url_arr['port']) : "80";

//サーバーに接続します
$fp = fsockopen($host, $port, $err_no, $err_str, 30);
if (!$fp){ return false }

// リクエストプロトコルを構築します
$request_str = "GET " .$path." HTTP/1.1rn";
$request_str .= "ホスト: ".$host."rn";
$request_str .= "接続: Closernrn";

//リクエストを送信
fwrite( $fp, $request_str);
$first_header = fgets($fp, 1024);
fclose($fp);

// ファイルが存在するかどうかを判定
if (trim($ first_header) == ""){ return false; }
if (!preg_match("/200/", $first_header)){
return false;
}
return true;
}

//テストコード
$str_url = 'http://www.phpx.com/viewarticle.php?id=119617';
$exits =remote_file_exists($str_url);
echo $exists ? "存在します" : "存在しません";

?>



関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート