欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

curl判断网址是否存在

程序员文章站 2022-04-19 21:02:13
...
function url_exists($url)
{
$ch = curl_init();     
curl_setopt($ch, CURLOPT_URL,$url);     
curl_setopt($ch, CURLOPT_NOBODY, 1); // 不下载     
curl_setopt($ch, CURLOPT_FAILONERROR, 1);     
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);     
return (curl_exec($ch)!==false) ? true : false;     

}

用这个函数判断网址是否存在,传入的url如果是字母能很快判断是否存在,传入的url是中文,判断会变得很慢,为什么?请问有什么改进方法?

回复内容:

function url_exists($url)
{

$ch = curl_init();     
curl_setopt($ch, CURLOPT_URL,$url);     
curl_setopt($ch, CURLOPT_NOBODY, 1); // 不下载     
curl_setopt($ch, CURLOPT_FAILONERROR, 1);     
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);     
return (curl_exec($ch)!==false) ? true : false;     

}

用这个函数判断网址是否存在,传入的url如果是字母能很快判断是否存在,传入的url是中文,判断会变得很慢,为什么?请问有什么改进方法?

供参考 http://blog.csdn.net/ashelyhss/article/details/7916970

希望有所帮助~ :)

如果用curl判断的话 先自行设置规则过滤非url

然后根据返回的headers信息判断url是否存在

其次有个很方便的函数 get_headers() 非url会返回false 正常的url会返回headers信息 然后判断下http状态就行了

相关标签: php