ホームページ >バックエンド開発 >PHPチュートリアル >cURL を使用して PHP でヘッダーのみを取得するにはどうすればよいですか?
PHP の cURL によるヘッダーのみの取得
この記事では、PHP で cURL を使用して、ヘッダーのみを取得する代わりにヘッダーのみを取得することに関する 2 つの問い合わせに対処します。ページ全体のデータ。処理効率と特定の実装上の課題に重点を置いています。
処理効率
はい、リモート サーバーの処理能力と帯域幅消費量の両方が削減されます。ページ全体を取得する場合と比較して、ヘッダーのみを取得する場合。これは、サーバーが HTML コンテンツの生成と解析のオーバーヘッドを回避できるため、負荷が軽減されます。
ファイル変更日の取得
最終変更日を取得するには日付 (Last-Modified ヘッダー) またはリモート ファイルの If-Modified-Since ヘッダーを取得するには、次の手順を実行できます。
<?php class URIInfo { public $info; public $header; private $url; public function __construct($url) { $this->url = $url; $this->setData(); } public function setData() { $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $this->url); curl_setopt($curl, CURLOPT_FILETIME, true); curl_setopt($curl, CURLOPT_NOBODY, true); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_HEADER, true); $this->header = curl_exec($curl); $this->info = curl_getinfo($curl); curl_close($curl); } public function getFiletime() { return $this->info['filetime']; } } $filetime = (new URIInfo('http://www.example.com/file.xml'))->getFiletime(); if ($filetime != -1) { echo date('Y-m-d H:i:s', $filetime); } else { echo 'filetime not available'; } ?>
このアプローチでは、クラスを利用してヘッダー情報を取得する機能をカプセル化し、 Last-Modified ヘッダーを抽出しています。
実装の課題
提供された元のコードは、curl_getinfo($header) を使用して最終変更日を取得しようとしましたが、これは正しくありません。ヘッダー情報を取得するには、curl_getinfo() を cURL ハンドル ($curl) とともに使用する必要があります。さらに、最終変更日を取得するには CURLOPT_FILETIME を使用すれば十分です。
結論として、PHP で cURL を使用したヘッダーのみの取得は、特定のヘッダー情報にアクセスできると同時に、サーバーの負荷を軽減できる可能性があります。上記のガイドラインに従うことで、この機能をコードに効果的に実装できます。
以上がcURL を使用して PHP でヘッダーのみを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。