如何解决验证URL是否正常运行
| 我将从用户那里获取URL。现在,我需要验证地址是否有效。 例如: 如果用户输入\“ google.com \”,那么我会将\“ google.com \”作为参数传递给某个函数,如果URL处于活动状态,正在上载并且正在运行,则函数将返回TRUE,否则返回FALSE。 任何内置功能或一些帮助。解决方法
我建议使用get_headers($ url)并检查您的响应中是否包含\“ 200 OK \”。如果是这样,则该站点仍然有效,并以有效请求进行了响应。您还可以根据需要检查其他状态代码,例如重定向和诸如此类。
,
function url_exists($url){
$ch = curl_init($url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch,CURLOPT_TIMEOUT,5);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,5);
curl_exec($ch);
$code = curl_getinfo($ch,CURLINFO_HTTP_CODE);
curl_close($ch);
return $code == 200;
}
您可能需要支持其他httpcode,例如201,但这取决于您。
编辑:
值得注意的是,这使您可以更好地控制失败之前要使用的超时。
, 试试fopen
$f = @fopen(\'http://www.google.com/\',\'r\');
if (is_resource($f)) {
fclose($f);
return true;
} else { return false; }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。