分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 前端开发

PHP利用get_headers()函数判断远程的url地址是否有效

发布时间:2023-09-06 02:33责任编辑:赖小花关键词:urlPHP

问题:

利用url访问远程的文件、图片、视频时有时需要请求前判断url地址是否有效。

解决办法:

(PHP 5, PHP 7)

get_headers — 取得服务器响应一个 HTTP 请求所发送的所有标头。

利用PHP自带的函数get_headers(),利用http返回值是否存在200状态,来判断url地址是否有效。

get_headers()函数官方介绍:http://php.net/manual/zh/function.get-headers.php

具体实现代码如下:

案例一:

$url = "https://www.baidu.com";$response = get_headers($url);echo "<pre>";var_dump($response);$response = get_headers($url,1);//如果将可选的 format 参数设为 1,则 get_headers() 会解析相应的信息并设定数组的键名。echo ‘<pre>‘;var_dump($response);

打印结果如下:

array(16) { ?[0]=>string(15) "HTTP/1.0 200 OK" ?[1]=>string(20) "Accept-Ranges: bytes" ?[2]=>string(23) "Cache-Control: no-cache" ?[3]=>string(21) "Content-Length: 14722" ?[4]=>string(23) "Content-Type: text/html" ?[5]=>string(35) "Date: Wed, 20 Feb 2019 13:12:31 GMT" ?[6]=>string(21) "Etag: "5c653bc8-3982"" ?[7]=>string(44) "Last-Modified: Thu, 14 Feb 2019 09:58:32 GMT" ?[8]=>string(39) "P3p: CP=" OTI DSP COR IVA OUR IND COM "" ?[9]=>string(16) "Pragma: no-cache" ?[10]=>string(15) "Server: BWS/1.1" ?[11]=>string(141) "Set-Cookie: BAIDUID=72E4B8623F9E998C790B22F8E8D64BEC:FG=1; expires=Thu, 31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com" ?[12]=>string(137) "Set-Cookie: BIDUPSID=72E4B8623F9E998C790B22F8E8D64BEC; expires=Thu, 31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com" ?[13]=>string(111) "Set-Cookie: PSTM=1550668351; expires=Thu, 31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com" ?[14]=>string(21) "Vary: Accept-Encoding" ?[15]=>string(33) "X-Ua-Compatible: IE=Edge,chrome=1"}
array(14) { ?[0]=>string(15) "HTTP/1.0 200 OK" ?["Accept-Ranges"]=>string(5) "bytes" ?["Cache-Control"]=>string(8) "no-cache" ?["Content-Length"]=>string(5) "14722" ?["Content-Type"]=>string(9) "text/html" ?["Date"]=>string(29) "Wed, 20 Feb 2019 13:12:31 GMT" ?["Etag"]=>string(15) ""5c653bc8-3982"" ?["Last-Modified"]=>string(29) "Thu, 14 Feb 2019 09:58:32 GMT" ?["P3p"]=>string(34) "CP=" OTI DSP COR IVA OUR IND COM "" ?["Pragma"]=>string(8) "no-cache" ?["Server"]=>string(7) "BWS/1.1" ?["Set-Cookie"]=>array(3) { ???[0]=>string(129) "BAIDUID=72E4B8623F9E998CF68FDDAD465EAF4A:FG=1; expires=Thu, 31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com" ???[1]=>string(125) "BIDUPSID=72E4B8623F9E998CF68FDDAD465EAF4A; expires=Thu, 31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com" ???[2]=>string(99) "PSTM=1550668351; expires=Thu, 31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com" ?} ?["Vary"]=>string(15) "Accept-Encoding" ?["X-Ua-Compatible"]=>string(16) "IE=Edge,chrome=1"}

 案例二:

$url = "https://www.baidu.com";$response = get_headers($url);if(preg_match(‘/200/‘,$response[0])){ ????echo "<pre/>"; ????var_dump($response[0]); }else{ ???var_dump("无效url资源!"); }

打印结果如下:

string(15) "HTTP/1.0 200 OK"

PHP利用get_headers()函数判断远程的url地址是否有效

原文地址:https://www.cnblogs.com/wenzheshen/p/10409268.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved