使用 php 检查一个通过 http 协议访问的网络文件是否存在

 
更多

使用 php 检查一个通过 http 协议访问的网络文件是否存在。

/**
 * 检查一个通过 http 协议访问的网络文件是否存在
 * @param string $url
 * @return bool
 */
function checkIfHttpFileExists($url): bool {
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_NOBODY, true); // 只检查头部信息,不下载整个文件
    curl_setopt($ch, CURLOPT_FAILONERROR, true); // 在HTTP错误时返回false
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // 返回结果而不是直接输出
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); // 跟随重定向
    curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)'); // 模拟浏览器
    curl_setopt($ch, CURLOPT_TIMEOUT, 10); // 设置超时时间

    $response = curl_exec($ch);
    $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);

    curl_close($ch);

    // 200表示成功,404表示文件不存在
    return $httpCode === 200;
}
打赏

本文固定链接: https://www.cxy163.net/archives/2998 | 绝缘体

该日志由 绝缘体.. 于 2024年02月21日 发表在 未分类 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: 使用 php 检查一个通过 http 协议访问的网络文件是否存在 | 绝缘体
关键字: , , , ,

使用 php 检查一个通过 http 协议访问的网络文件是否存在:等您坐沙发呢!

发表评论


快捷键:Ctrl+Enter