检查网址是否存在的最准确,最快捷的方法是什么?示例:Google.com。我一直在读我可以使用curl或者我可以使用php file_exists()来定位索引文件。我用过这个卷曲功能......
function url_exists($url) {
$ch = @curl_init($url);
@curl_setopt($ch, CURLOPT_HEADER, TRUE);
@curl_setopt($ch, CURLOPT_NOBODY, TRUE);
@curl_setopt($ch, CURLOPT_FOLLOWLOCATION, FALSE);
@curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$status = array();
preg_match('/HTTP\/.* ([0-9]+) .*/', @curl_exec($ch) , $status);
return ($status[1] == 200);
}
例如google.com但是对于谷歌而言它返回false,对于其他网站则返回true。我想我正在寻找这个问题的最佳解决方案。
答案 0 :(得分:0)
如果您只是寻找连接而不是状态代码,则可以使用fopen
...
if (!fopen($url, "r")) {
// cannot connect
}
如果要检查HTTP代码,那么curl
可能是最好的方式。