检查php中url的有效性

时间:2014-06-26 13:44:44

标签: php url

有没有办法找到广告网址是否有效

我试过这段代码

if (filter_var($url, FILTER_VALIDATE_URL) === FALSE) {
   echo 'Not a valid URL';
}
else
   echo 'Ok';

但是如果我尝试使用http://www.gsrgrs.grsgsrg,结果就可以了。

修改:目标是查看是否有实时网站。

1 个答案:

答案 0 :(得分:2)

http://www.gsrgrs.grsgsrg是一个完全有效的网址,因此测试结果是正确的。

如果您的目的是发现URL是否指向有效资源,则应使用cURL或类似的库来尝试获取操作,并测试协议响应代码,例如:

$http = curl_init($url);
$result = curl_exec($http);
$http_status = curl_getinfo($http, CURLINFO_HTTP_CODE);
curl_close($http);
if($http_status == 200)
    echo 'Ooooh, we got a 200 OK response from the webserver!';
else
    echo 'Meh, failed with '.$http_status.' :(';