使用get_headers函数判断链接是否有效或失效
`get_headers`函数是PHP中的一个内置函数,用于获取一个URL的HTTP头部信息。通过检查返回的数组中是否包含特定的头部字段(如"200 OK"),我们可以判断链接是否有效或失效。以下是一个使用`get_headers`函数判断链接有效性的示例代码: ```php function is_valid_url($url) { $headers = get_headers($url); return isset($headers['200 OK']); } $url = "https://www.example.com"; if (is_valid_url($url)) { echo "链接有效"; } else { echo "链接失效"; } ```
PHP判断链接是否有效或失效的方法代码,get_headers() 是PHP系统级函数,他返回一个包含有服务器响应一个 HTTP 请求所发送的标头的数组。如果失败则返回 FALSE 并发出一条 E_WARNING 级别的错误信息(可用来判断远程文件是否存在)。
函数定义
arrayget_headers(string$url[,int$format=0])
参数
url 目标 URL
format 如果将可选的 format 参数设为 1,则 get_headers() 会解析相应的信息并设定数组的键名。
示例
<?php$url='https://www.caijicaiji.com/';print_r(get_headers($url));print_r(get_headers($url,1));?>
以上例程的输出类似于:
Array([0]=>HTTP/1.1200OK[1]=>Date:Sat,29May200412:28:13GMT[2]=>Server:Apache/1.3.27(Unix)(Red-Hat/Linux)[3]=>Last-Modified:Wed,08Jan200323:11:55GMT[4]=>ETag:"3f80f-1b6-3e1cb03b"[5]=>Accept-Ranges:bytes[6]=>Content-Length:438[7]=>Connection:close[8]=>Content-Type:text/html)Array([0]=>HTTP/1.1200OK[Date]=>Sat,29May200412:28:14GMT[Server]=>Apache/1.3.27(Unix)(Red-Hat/Linux)[Last-Modified]=>Wed,08Jan200323:11:55GMT[ETag]=>"3f80f-1b6-3e1cb03b"[Accept-Ranges]=>bytes[Content-Length]=>438[Connection]=>close[Content-Type]=>text/html)
具体代码来了。
解释:判断远程url是否有效,根据返回值HTTP中是否有200信息,判断是否是有效url资源 .
<?php$url="https://www.caijicaiji.com//api_mac.php";$array=get_headers($url,1);if(preg_match('/200/',$array[0])){echo"<pre/>";print_r($array);}else{echo"无效url资源!";}?>