cURL을 통한 PHP의 헤더 전용 검색
마지막 수정 날짜와 같은 파일 메타데이터를 효율적으로 검색하려면 cURL 헤더 사용을 고려하세요. 유일한 검색 기능입니다. 이 방법을 사용하면 원격 서버의 처리 능력과 대역폭 소비를 크게 줄일 수 있습니다.
헤더만 검색하려면 cURL 요청에서 다음 옵션을 설정할 수 있습니다.
curl_setopt($curl, CURLOPT_HEADER, true); curl_setopt($curl, CURLOPT_NOBODY, true);
이렇게 하면 cURL이 알려줍니다. 응답의 실제 본문을 생략하고 HTTP 헤더 정보만으로 응답하도록 서버에 지시하는 HEAD 요청을 보냅니다.
마지막 수정 날짜 검색
마지막으로 수정된 날짜를 얻으려면 컬_getinfo()를 사용하여 cURL 핸들에서 FILETIME 정보를 검색할 수 있습니다. 예는 다음과 같습니다.
$curl = curl_init(); curl_setopt($curl, CURLOPT_URL, "http://url/file.xml"); curl_setopt($curl, CURLOPT_HEADER, true); curl_setopt($curl, CURLOPT_FILETIME, true); curl_setopt($curl, CURLOPT_NOBODY, true); curl_exec($curl); $filetime = curl_getinfo($curl, CURLINFO_FILETIME); // Returns timestamp of last modification curl_close($curl);
샘플 코드
다음은 cURL을 사용하여 원격 파일의 마지막 수정 날짜를 검색하고 표시하는 보다 완전한 예입니다.
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']; } // Other functions can be added to retrieve other information. } $uri_info = new URIInfo('http://example.com/index.html'); $filetime = $uri_info->getFiletime(); if ($filetime != -1) { echo date('Y-m-d H:i:s', $filetime); } else { echo 'Filetime not available'; }
위 내용은 cURL의 헤더 전용 검색을 사용하여 원격 파일의 마지막 수정 날짜를 효율적으로 검색하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!