使用php get_headers 判断URL是否有效的解决办法


Posted in PHP onApril 27, 2013

在php中判断一个文件或目录是否存在,大家通常都会想到is_file和file_exists两个函数。但这两个函数再判断一个远程url文件是否存在的问题上还是会存在这样那样的问题。这里作者将和大家分享一种利用php get_headers函数来判断远程url文件是有效否存在的办法。

关于php get_headers函数的作用及用法,可以参考本站文章:

php中get_headers函数的作用及用法的详细介绍

下面来具体说如何利用php get_headers却判断url的真实有效性。

通过该函数的介绍,我们可以知道对于这个函数简单的说就是它返回的是一个HTTP请求的头文件信息,信息格式基本如下:

(1)

Array
(
    [0] => HTTP/1.1 200 OK
    [1] => Date: Sat, 29 May 2004 12:28:13 GMT
    [2] => Server: Apache/1.3.27 (Unix)  (Red-Hat/Linux)
    [3] => Last-Modified: Wed, 08 Jan 2003 23:11:55 GMT
    [4] => ETag: "3f80f-1b6-3e1cb03b"
    [5] => Accept-Ranges: bytes
    [6] => Content-Length: 438
    [7] => Connection: close
    [8] => Content-Type: text/html
)

(2)

Array
(
    [0] => HTTP/1.0 404 Not Found
    [1] => Date: Sat, 29 May 2004 12:28:13 GMT
    [2] => Server: Apache/1.3.27 (Unix)  (Red-Hat/Linux)
    [3] => Last-Modified: Wed, 08 Jan 2003 23:11:55 GMT
    [4] => ETag: "3f80f-1b6-3e1cb03b"
    [5] => Accept-Ranges: bytes
    [6] => Content-Length: 438
    [7] => Connection: close
    [8] => Content-Type: text/html
)

从以上两种情况可以很容易看出,如果判断该url是否有效存在肯定是通过数组中的第一个元素值来判断的。服务器返回 200 即文件正确返回的意思,服务器返回 404 即文件不存在,因此从这个地方就可以很容易的判断一个url的是否存在了。

(详细出处:PHP程序员笔记)

 

PHP 相关文章推荐
967 个函式
Oct 09 PHP
PHP4.04简明安装
Oct 09 PHP
PHP提取中文首字母
Apr 09 PHP
收藏的PHP常用函数 推荐收藏保存
Feb 21 PHP
请离开include_once和require_once
Jul 18 PHP
Ajax+PHP快速上手及简单应用说明
Jul 24 PHP
php实现图片等比例缩放代码
Jul 23 PHP
php+html5实现无刷新图片上传教程
Jan 22 PHP
详解PHP如何更好的利用PHPstorm的自动提示
Aug 18 PHP
Laravel-添加后台模板AdminLte的实现方法
Oct 08 PHP
tp5递归 无限级分类详解
Oct 18 PHP
PHP获取类私有属性的3种方法
Sep 10 PHP
php中serialize序列化与json性能测试的示例分析
Apr 27 #PHP
php gzip压缩输出的实现方法
Apr 27 #PHP
PHP字符串的编码问题的详细介绍
Apr 27 #PHP
php正则表达式使用的详细介绍
Apr 27 #PHP
基于PHP编程注意事项的小结
Apr 27 #PHP
php二维数组排序与默认自然排序的方法介绍
Apr 27 #PHP
使用Apache的htaccess防止图片被盗链的解决方法
Apr 27 #PHP
You might like
PHP与SQL注入攻击[二]
2007/04/17 PHP
php判断是否为json格式的方法
2014/03/04 PHP
PHP简单实现“相关文章推荐”功能的方法
2014/07/19 PHP
WordPress主题中添加文章列表页页码导航的PHP代码实例
2015/12/22 PHP
php实现图片上传时添加文字和图片水印技巧
2020/04/18 PHP
搜索附近的人PHP实现代码
2018/02/11 PHP
JQuery的一些小应用收集
2010/03/27 Javascript
js 判断控件获得焦点的示例代码
2014/03/04 Javascript
jQuery EasyUI 菜单与按钮之创建简单的菜单和链接按钮
2015/11/18 Javascript
jQuery点击其他地方时菜单消失的实现方法
2016/04/22 Javascript
jQuery实现的兼容性浮动层示例
2016/08/02 Javascript
AngularJS 依赖注入详解及示例代码
2016/08/17 Javascript
Angular中响应式表单的三种更新值方法详析
2017/08/22 Javascript
Bootstrap实现的表格合并单元格示例
2018/02/06 Javascript
JavaScript中利用Array filter() 方法压缩稀疏数组
2018/02/24 Javascript
Bootstrap table中toolbar新增条件查询及refresh参数使用方法
2018/05/18 Javascript
JavaScript代码简化技巧实例解析
2020/09/09 Javascript
Python 字典(Dictionary)操作详解
2014/03/11 Python
Python实现 版本号对比功能的实例代码
2019/04/18 Python
python 制作本地应用搜索工具
2021/02/27 Python
localStorage的过期时间设置的方法详解
2018/11/26 HTML / CSS
html5 canvas实现给图片添加平铺水印
2019/08/20 HTML / CSS
美国知名女性服饰品牌:New York & Company
2017/03/23 全球购物
TUMI澳大利亚网站:美国旅行箱包品牌
2017/03/27 全球购物
ProBikeKit德国:在线公路自行车专家
2018/06/03 全球购物
什么是托管函数?托管函数有什么用?
2014/06/15 面试题
控制工程专业个人求职信
2013/09/25 职场文书
物流创业计划书
2014/02/01 职场文书
公司业务员岗位职责
2014/03/18 职场文书
奥巴马就职演讲稿
2014/05/15 职场文书
项目转让协议书
2014/10/27 职场文书
2014年乡镇党建工作总结
2014/11/11 职场文书
五年级学生评语大全
2014/12/26 职场文书
施工员岗位职责范本
2015/04/11 职场文书
学习《中小学教师职业道德规范》心得体会
2016/01/18 职场文书
自荐信范文
2019/05/20 职场文书