如何检查URL是否存在 - 错误404?(使用php)

far*_*oft 2 php url exists

如何检查URL是否存在 - 错误404?(使用php)

<?php
$url = "http://www.faressoft.org/";
?>
Run Code Online (Sandbox Code Playgroud)

Art*_*cto 7

如果有allow_url_fopen,你可以这样做:

$exists = ($fp = fopen("http://www.faressoft.org/", "r")) !== FALSE;
if ($fp) fclose($fp);
Run Code Online (Sandbox Code Playgroud)

虽然严格来说,这不会仅对404错误返回false.可以使用流上下文来获取该信息,但更好的选择是使用curl扩展:

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://www.example.com/notfound");
curl_setopt($ch, CURLOPT_NOBODY, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_exec($ch);
$is404 = curl_getinfo($ch, CURLINFO_HTTP_CODE) == 404;
curl_close($ch);
Run Code Online (Sandbox Code Playgroud)