首页 > 后端开发 > php教程 > 如何使用 cURL 在 PHP 中高效检索远程文件的上次修改日期?

如何使用 cURL 在 PHP 中高效检索远程文件的上次修改日期?

Mary-Kate Olsen
发布: 2024-11-13 09:16:02
原创
666 人浏览过

How Can I Efficiently Retrieve the Last Modified Date of a Remote File in PHP using cURL?

通过 cURL 在 PHP 中仅检索标头

简介

在某些情况下,仅检索远程资源的 HTTP 标头可以提供性能优势。本文探讨了仅标头检索的优点,并提供了 PHP cURL 解决方案来检索远程文件的上次修改日期。

节省处理能力和带宽

当仅获取标头时,与返回整个页面相比,远程服务器产生的处理开销更少。同样,网络带宽消耗也会减少,这对于低带宽连接或保留带宽至关重要的情况是有益的。

检索上次修改日期

获取最后修改日期或 If-Modified-Since 标头,可以使用 cURL 的 CURLOPT_FILETIME 和 CURLOPT_NOBODY 选项。这些设置指示 cURL 仅检索文件时间信息并跳过下载页面内容。

示例实现

class LastChange
{
    public $lastChange;

    function setLastChange()
    {
        $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);

        $header = curl_exec($curl);
        $this->lastChange = curl_getinfo($curl, CURLINFO_FILETIME);
        curl_close($curl);
    }

    function getLastChange()
    {
        return $this->lastChange;
    }
}
登录后复制

通过将 CURLINFO_FILETIME 作为第二个参数传递给 curl_getinfo( ),最后修改日期以 Unix 形式检索

其他注意事项

但是,请务必注意,文件时间信息可能并不总是可用。在这种情况下,curl_getinfo() 将返回 -1,表示无法确定文件时间。

以上是如何使用 cURL 在 PHP 中高效检索远程文件的上次修改日期?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板