php简单检测404页面的方法示例


Posted in PHP onAugust 23, 2019

本文实例讲述了php简单检测404页面的方法。分享给大家供大家参考,具体如下:

需求描述:

检测给定的url是否是404页面。

方式一:

使用file_get_contents函数,可以读取web中的网页或者文件。

如果遇到404页面,则会返回false,否则返回相应的网页内容。

使用该函数有两点需要注意:

1.file_get_contents在读取不存在的页面时,会报一个warning,所以最好对这里的警告进行屏蔽操作。

2.file_get_contents默认会读取页面的所有内容,然后再返回。为了提交读取速度,我们可以限制只读取10个字节就返回。

php简单检测404页面的方法示例

<?php
$res = @file_get_contents("http://www.baidu.com",null,null,0,10);
if($res){
  echo $res;
}else{
  echo "404";
}

方式二:

我们要判断该页面是否是404页面,这个可以通过网页返回的状态码来判断。

使用该方法在页面404的时候并不会报警告。

因为我们只需要状态码,所以我们不需要读取网页的内容,可以通过设置CURLOPT_NOBODY参数,不读取网页内容,来缩短程序运行的时间。

<?php
$ch = curl_init("http://www.baidu.com");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_NOBODY, 1);
$res = curl_exec($ch);
$code = curl_getinfo($ch,CURLINFO_HTTP_CODE);
if($code == 404){
  echo "404";
}else{
  echo $code;
}

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
一个颜色轮换的简单例子
Oct 09 PHP
php HandlerSocket的使用
May 02 PHP
PHP 命令行参数详解及应用
May 18 PHP
PHP容易被忽略而出错陷阱 数字与字符串比较
Nov 10 PHP
Linux fgetcsv取得的数组元素为空字符串的解决方法
Nov 25 PHP
PHP 使用MySQL管理Session的回调函数详解
Jun 21 PHP
php随机获取金山词霸每日一句的方法
Jul 09 PHP
thinkPHP实现递归循环栏目并按照树形结构无限极输出的方法
May 19 PHP
PHP 5.6.11中CURL模块问题的解决方法
Aug 08 PHP
PHP获取指定日期是星期几的实现方法
Nov 30 PHP
php实现留言板功能
Mar 05 PHP
php中isset与empty函数的困惑与用法分析
Jul 05 PHP
PHP Redis扩展无法加载的问题解决方法
Aug 22 #PHP
PHP Primary script unknown 解决方法总结
Aug 22 #PHP
php用wangeditor3实现图片上传功能
Aug 22 #PHP
PHP生成zip压缩包的常用方法示例
Aug 22 #PHP
Laravel 实现数据软删除功能
Aug 21 #PHP
PHP针对redis常用操作实例详解
Aug 17 #PHP
php5.6.x到php7.0.x特性小结
Aug 17 #PHP
You might like
在VS2008中编译MYSQL5.1.48的方法
2010/07/03 PHP
php关联数组快速排序的方法
2015/04/17 PHP
WordPress中给媒体文件添加分类和标签的PHP功能实现
2015/12/31 PHP
ThinkPHP中html:list标签用法分析
2016/01/09 PHP
Yii配置与使用memcached缓存的方法
2016/07/13 PHP
PHP错误和异常处理功能模块示例
2016/11/12 PHP
TP5框架model常见操作示例小结【增删改查、聚合、时间戳、软删除等】
2020/04/05 PHP
extjs fckeditor集成代码
2009/05/10 Javascript
JQuery 选择器、过滤器介绍
2011/02/14 Javascript
解析Jquery的LigerUI如何实现文件上传
2013/07/09 Javascript
关于IE中getElementsByClassName不能用的问题解决方法
2013/08/26 Javascript
深入理解JavaScript系列(41):设计模式之模板方法详解
2015/03/04 Javascript
Redis基本知识、安装、部署、配置笔记
2015/03/05 Javascript
原生js实现类似弹窗抖动效果
2015/04/02 Javascript
JS验证IP,子网掩码,网关和MAC的方法
2015/07/02 Javascript
浅谈angularJS中的事件
2016/07/12 Javascript
js仿腾讯QQ的web登陆界面
2016/08/19 Javascript
JavaScript算法系列之快速排序(Quicksort)算法实例详解
2016/09/04 Javascript
微信小程序实现顶部普通选项卡效果(非swiper)
2020/06/19 Javascript
zTree jQuery 树插件的使用(实例讲解)
2017/09/25 jQuery
浅谈react-native热更新react-native-pushy集成遇到的问题
2017/09/30 Javascript
JS获取本地地址及天气的方法实例小结
2019/05/10 Javascript
Vant picker 多级联动操作
2020/11/02 Javascript
对pandas中to_dict的用法详解
2018/06/05 Python
python中pip的安装与使用教程
2018/08/10 Python
Python面向对象程序设计构造函数和析构函数用法分析
2019/04/12 Python
python多线程http压力测试脚本
2019/06/25 Python
基于 HTML5 WebGL 实现的医疗物流系统
2019/10/08 HTML / CSS
函授毕业生的自我鉴定
2013/11/26 职场文书
咖啡蛋糕店创业计划书
2014/01/28 职场文书
重阳节标语大全
2014/10/07 职场文书
干部个人考察材料
2014/12/24 职场文书
小学生勤俭节约倡议书
2015/04/29 职场文书
如何理解Vue简单状态管理之store模式
2021/05/15 Vue.js
详解Python中的进程和线程
2021/06/23 Python
Docker安装MySql8并远程访问的实现
2022/07/07 Servers