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 相关文章推荐
PHP zlib扩展实现页面GZIP压缩输出
Jun 17 PHP
PHP 遍历文件实现代码
May 04 PHP
一个PHP缓存类代码(附详细说明)
Jun 09 PHP
PHP序列号生成函数和字符串替换函数代码
Jun 07 PHP
用PHP即时捕捉PHP中的错误并发送email通知的实现代码
Jan 19 PHP
使用Apache的htaccess防止图片被盗链的解决方法
Apr 27 PHP
[原创]ThinkPHP中SHOW_RUN_TIME不能正常显示运行时间的解决方法
Oct 10 PHP
PHP中的print_r 与 var_dump 输出数组
Jun 13 PHP
php中请求url的五种方法总结
Jul 13 PHP
yii gridview实现时间段筛选功能
Aug 15 PHP
Smarty模板变量与调节器实例详解
Jul 20 PHP
php curl发送请求实例方法
Aug 01 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
PHP 小心urldecode引发的SQL注入漏洞
2011/10/27 PHP
PHP学习笔记之字符串编码的转换和判断
2014/05/22 PHP
Joomla简单判断用户是否登录的方法
2016/05/04 PHP
给moz-firefox下添加IE方法和属性
2007/04/10 Javascript
浅谈Sizzle的“编译原理”
2015/04/14 Javascript
js实现文字截断功能
2016/09/14 Javascript
vue学习笔记之vue1.0和vue2.0的区别介绍
2017/05/17 Javascript
javascript  删除select中的所有option的实例
2017/09/17 Javascript
如何编写一个完整的Angular4 FormText 组件
2017/11/18 Javascript
详解react-native WebView 返回处理(非回调方法可解决)
2018/02/27 Javascript
vue-cli 引入jQuery,Bootstrap,popper的方法
2018/09/03 jQuery
在VUE中实现文件下载并判断状态的方法
2019/11/08 Javascript
关于AngularJS中几种Providers的区别总结
2020/05/17 Javascript
使用Vue实现一个树组件的示例
2020/11/06 Javascript
详解JavaScript中的链式调用
2020/11/27 Javascript
浅析Python中的getattr(),setattr(),delattr(),hasattr()
2016/06/14 Python
python 获取文件下所有文件或目录os.walk()的实例
2018/04/23 Python
Python3用tkinter和PIL实现看图工具
2018/06/21 Python
解决Python一行输出不显示的问题
2018/12/03 Python
python3安装speech语音模块的方法
2018/12/24 Python
pandas删除指定行详解
2019/04/04 Python
基于django channel实现websocket的聊天室的方法示例
2019/04/11 Python
Python中函数参数匹配模型详解
2019/06/09 Python
基于Python测试程序是否有错误
2020/05/16 Python
Lookfantastic瑞典:英国知名美妆购物网站
2018/04/06 全球购物
工程概预算专业毕业生求职信
2013/10/04 职场文书
经济与贸易专业应届生求职信
2013/11/19 职场文书
网络信息管理员岗位职责
2014/01/05 职场文书
毕业证丢失证明
2014/01/15 职场文书
道路建设实施方案
2014/03/18 职场文书
离婚上诉状范文
2015/05/23 职场文书
教师节校长致辞
2015/07/31 职场文书
《小乌鸦爱妈妈》教学反思
2016/02/19 职场文书
如何用RabbitMQ和Swoole实现一个异步任务系统
2021/05/29 PHP
springboot @ConfigurationProperties和@PropertySource的区别
2021/06/11 Java/Android
Python可视化神器pyecharts之绘制地理图表练习
2022/07/07 Python