gpt4 book ai didi

php - 在 PHP 中测试 404 的 URL 的简单方法?

转载 作者:IT老高 更新时间:2023-10-28 11:43:57 66 4
gpt4 key购买 nike

我正在自学一些基本的抓取,我发现有时我输入到代码中的 URL 会返回 404,这会弄乱我的所有其余代码。

所以我需要在代码顶部进行测试,以检查 URL 是否返回 404。

这似乎是一项非常简单的任务,但 Google 没有给我任何答案。我担心我在寻找错误的东西。

一个博客推荐我使用这个:

$valid = @fsockopen($url, 80, $errno, $errstr, 30);

然后测试 $valid 是否为空。

但我认为给我带来问题的 URL 上有一个重定向,所以 $valid 对于所有值都是空的。或者我做错了什么。

我还研究了一个“头部请求”,但我还没有找到任何可以使用或尝试的实际代码示例。

建议?这和 curl 有什么关系?

最佳答案

如果您使用的是 PHP 的 curl bindings ,您可以使用 curl_getinfo 查看错误代码像这样:

$handle = curl_init($url);
curl_setopt($handle, CURLOPT_RETURNTRANSFER, TRUE);

/* Get the HTML or whatever is linked in $url. */
$response = curl_exec($handle);

/* Check for 404 (file not found). */
$httpCode = curl_getinfo($handle, CURLINFO_HTTP_CODE);
if($httpCode == 404) {
/* Handle 404 here. */
}

curl_close($handle);

/* Handle $response here. */

关于php - 在 PHP 中测试 404 的 URL 的简单方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/408405/

66 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com