ホームページ  >  記事  >  类库下载  >  phpはリモートファイルが存在するかどうかを確認します

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

高洛峰
高洛峰オリジナル
2016-10-14 10:39:561146ブラウズ

file_exists ではリモートファイルが存在するかどうかを確認できないことは知っていましたが、リモートファイルが存在するかどうかを確認する方法がわかりません

今日、PHP 情報研究センターのブログを読んでいると、get_headers という関数を見つけました

原文はこちら:
リモート ファイルを確認する方法 存在するかどうか
http://www.xqs.cn/index.php?load=read&id=95

get_headers(PHP5) — によって送信されたすべてのヘッダーを取得しますHTTP リクエストに応答してサーバー

get_headers() は、HTTP リクエストに応答してサーバーによって送信されたヘッダーを含む配列を返します。失敗した場合は FALSE を返し、E_WARNING レベルのエラー メッセージを発行します。

オプションの format パラメーターが 1 に設定されている場合、get_headers() は対応する情報を解析し、配列のキー名を設定します。

次のようなものを返します

Array (
[0] => HTTP/1.1 200 OK
[Date] => Sat, 29 May 2004 12:28:14 GMT
[Server] => Apache/1.3.27 (Unix) ) (Red-Hat/Linux)
[Last-Modified] => Wed, 08 Jan 2003 23:11:55 GMT
[ETag] => "3f80f-1b6-3e1cb03b"
[Accept-Ranges] => バイト
[ Content-Length ] => 438
[Connection] => close
[Content-Type] => text/html
)

配列を返すかどうかを原作者が判断するのは適切ではないと思います

http ファイルのステータスが 200 ではない可能性があるため、それは別のことです

実際に私の Web サイトに存在しないものをテストしたため、返されるページのステータスは 404 であるはずですが、元の作成者の関数は依然として true を返します

。 、返されたページのステータスに基づいて判断する必要があります


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

関連記事

続きを見る