通过 Curl 在 PHP 中进行仅标头检索
通过仅标头检索减少服务器负载
使用PHP和curl检索网页内容时,可以指定是否仅获取标题或整个页面。选择仅标头选项会降低远程服务器所需的处理能力和带宽,因为它不需要生成和传输页面正文。
通过curl_getinfo获取上次修改日期
要检索远程文件的上次修改日期或 If-Modified-Since 标头,可以使用curl_getinfo()。传递curl 句柄(不是标头数据)作为第一个参数,并指定CURLINFO_FILETIME 作为第二个参数。但是,请务必注意,文件时间可能并不总是可用,在这种情况下,它将报告为 -1。
示例:检索上次修改日期
<?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']; } } $uri_info = new URIInfo('http://www.codinghorror.com/blog/'); $filetime = $uri_info->getFiletime(); if ($filetime != -1) { echo date('Y-m-d H:i:s', $filetime); } else { echo 'filetime not available'; }
?>
额外注意事项
可以使用方法扩展 URIInfo 类以检索其他标头信息,例如内容类型或 ETag。
以上是如何在 PHP 中使用curl 检索远程文件的上次修改日期?的详细内容。更多信息请关注PHP中文网其他相关文章!