当前位置: 无忧屋首页 > 文章中心 > PHP >

利用get_headers函数判断链接是否有效或失效

来源:网络

发布人:天道酬勤

发布时间:2024-02-28

PHP判断链接是否有效或失效的方法代码,get_headers() 是PHP系统级函数,他返回一个包含有服务器响应一个 HTTP 请求所发送的标头的数组。如果失败则返回 FALSE 并发出一条 E_WARNING 级别的错误信息(可用来判断远程文件是否存在)。

函数定义

array get_headers ( string $url [, int $format = 0 ] )
参数

url 目标 URL

format 如果将可选的 format 参数设为 1,则 get_headers() 会解析相应的信息并设定数组的键名。

示例

  1. <?php
  2. $url='https://www.ityuyan.com/';
  3. print_r(get_headers($url));
  4. print_r(get_headers($url,1));
  5. ?>
以上例程的输出类似于:
  1. Array
  2. (
  3. [0] => HTTP/1.1 200 OK
  4. [1] => Date: Sat, 29 May 2004 12:28:13 GMT
  5. [2] => Server: Apache/1.3.27 (Unix)  (Red-Hat/Linux)
  6. [3] => Last-Modified: Wed, 08 Jan 2003 23:11:55 GMT
  7. [4] => ETag: "3f80f-1b6-3e1cb03b"
  8. [5] => Accept-Ranges: bytes
  9. [6] => Content-Length: 438
  10. [7] => Connection: close
  11. [8] => Content-Type: text/html
  12. )
  13. Array
  14. (
  15. [0] => HTTP/1.1 200 OK
  16. [Date] => Sat, 29 May 2004 12:28:14 GMT
  17. [Server] => Apache/1.3.27 (Unix)  (Red-Hat/Linux)
  18. [Last-Modified] => Wed, 08 Jan 2003 23:11:55 GMT
  19. [ETag] => "3f80f-1b6-3e1cb03b"
  20. [Accept-Ranges] => bytes
  21. [Content-Length] => 438
  22. [Connection] => close
  23. [Content-Type] => text/html
  24. )
具体代码来了。

解释:判断远程url是否有效,根据返回值HTTP中是否有200信息,判断是否是有效url资源 .
  1. <?php
  2. $url = "https://www.ityuyan.com//api_mac.php";
  3. $array = get_headers($url,1);
  4. if(preg_match('/200/',$array[0])){
  5. echo "<pre/>";
  6. print_r($array);
  7. }else{
  8. echo "无效url资源!";
  9. }
  10. ?>

免责声明:文中图文均系网友发布,转载来自网络,如有侵权请联系右侧客服QQ删除,无忧屋网友发布此文仅为传递信息,不代表无忧屋平台认同其观点。