PHP使用cURL库判断网址是否能够正常打开

学习笔记 马富天 2016-08-23 17:10:37 80 1

【摘要】cURL 是一个利用URL语法规定来传输文件和数据的工具,支持很多协议,如HTTP、FTP、TELNET等。最爽的是,PHP也支持 cURL 库。本文将介绍 cURL 的一些高级特性,以及在PHP中如何运用它,如何实现判断指定网址是否能够打开。

本文介绍用途:自己写了一个博客导航网站:第二导航网www.numberer.net,然后收录的博客渐渐多起来了,有的时候偶然点击某个博客的时候却发现该网站无法访问了,这样会造成自己的博客导航网出现死链,影响网站的发展,因此需要在编写一个功能,判断已收录的博客是否能够顺利打开,若否,则删除,这就是编写本文的出发点。当然,除了使用PHP的cURL函数库可以实现这一功能,还有其它的方法,但本文只介绍通过cURL库来实现判断指定网址是否能够打开。

完整代码如下:

  1. //	初始化一个新的cURL会话并获取一个网页
  2. function httpcode($url)
  3. {
  4. 	//	初始化一个新的cURL会话,返回一个cURL句柄,供 curl_setopt(), curl_exec()和 curl_close() 函数使用
  5. 	$ch = curl_init();
  6. 	$timeout = 10;	//	
  7. 	/* 设置URL和相应的选项 */
  8. 	//	启用时会将服务器返回的"Location: "放在header中递归的返回给服务器
  9. 	curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1);
  10. 	//	将 curl_exec()获取的信息以文件流的形式返回,而不是直接输出
  11. 	curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
  12. 	//	启用时会将头文件的信息作为数据流输出
  13. 	curl_setopt($ch, CURLOPT_HEADER, 1);
  14. 	//	在发起连接前等待的时间,如果设置为0,则无限等待
  15. 	curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
  16. 	//	需要获取的URL地址
  17. 	curl_setopt($ch,CURLOPT_URL,$url);
  18. 	// 抓取URL并把它传递给浏览器
  19. 	curl_exec($ch);
  20. 	//	常量CURLINFO_HTTP_CODE代表:最后一个收到的HTTP代码
  21. 	return $httpcode = curl_getinfo($ch,CURLINFO_HTTP_CODE);	
  22. 	// 关闭cURL资源,并且释放系统资源
  23. 	curl_close($ch);  
  24. }

使用方法:

  1. //	如果显示为200则正常,如果显示其它值表示不正常;$timeout后面的3是设置超时秒数。
  2. $url = 'http://www.mafutian.net';
  3. var_dump(httpcode($url));
  4. $url = 'http://www.mafutian.org';
  5. var_dump(httpcode($url));

执行结果:

请输入图片名称

若需要更深入的了解cURL,可以参考PHP学习手册,里面有详细介绍。

版权归 马富天PHP博客 所有

本文标题:《PHP使用cURL库判断网址是否能够正常打开》

本文链接地址:http://www.mafutian.net/189.html

转载请务必注明出处,小生将不胜感激,谢谢! 喜欢本文或觉得本文对您有帮助,请分享给您的朋友 ^_^

0

0

上一篇《 Windows系统如何建立远程桌面连接 》 下一篇《 【面试题】冒泡排序法的实现 》
分享到:

所有评论

  1. 首页
  2. 上一页
  3. 1
  4. 下一页
  5. 尾页
  6. 第1页
  7. 每页12条
  8. 共1页
  9. 共1条
评论审核未开启
表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情
验证码