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自动获取字符串编码函数mb_detect_encoding
May 31 PHP
php urlencode()与urldecode()函数字符编码原理详解
Dec 06 PHP
php 获取本地IP代码
Jun 23 PHP
curl实现站外采集的方法和技巧
Jan 31 PHP
编写PHP脚本来实现WordPress中评论分页的功能
Dec 10 PHP
PHP三种方式实现链式操作详解
Jan 21 PHP
在laravel中使用Symfony的Crawler组件分析HTML
Jun 19 PHP
PHP实现的二分查找算法实例分析
Dec 19 PHP
Laravel框架生命周期与原理分析
Jun 12 PHP
PHP基于curl模拟post提交json数据示例
Jun 22 PHP
PHP封装mysqli基于面向对象的mysql数据库操作类与用法示例
Feb 25 PHP
PHP7创建销毁session的实例方法
Feb 03 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生成xml时添加CDATA标签的方法
2014/10/17 PHP
php cookie名使用点号(句号)会被转换
2014/10/23 PHP
PHP实现驼峰样式字符串(首字母大写)转换成下划线样式字符串的方法示例
2017/08/10 PHP
JavaScript 快捷键设置实现代码
2009/03/13 Javascript
javascript 数据类型转换(parseInt,parseFloat)
2010/07/20 Javascript
基于JQuery的asp.net树实现代码
2010/11/30 Javascript
JS模块与命名空间的介绍
2013/03/22 Javascript
利用ajaxfileupload插件实现文件上传无刷新的具体方法
2013/06/08 Javascript
javascript实现很浪漫的气泡冒出特效
2020/09/05 Javascript
jQuery旋转木马式幻灯片轮播特效
2015/12/04 Javascript
bootstrap输入框组件使用方法详解
2017/01/19 Javascript
Ajax基础知识详解
2017/02/17 Javascript
关于react中组件通信的几种方式详解
2017/12/10 Javascript
微信小程序引入模块中wxml、wxss、js的方法示例
2019/08/09 Javascript
Python 流程控制实例代码
2009/09/25 Python
python实现DNS正向查询、反向查询的例子
2014/04/25 Python
Eclipse和PyDev搭建完美Python开发环境教程(Windows篇)
2016/11/16 Python
Python  pip安装lxml出错的问题解决办法
2017/02/10 Python
Python推导式简单示例【列表推导式、字典推导式与集合推导式】
2018/12/04 Python
Python  word实现读取及导出代码解析
2020/07/09 Python
可以随进度显示不同颜色的css3进度条分享
2014/04/11 HTML / CSS
关于Assembly命名空间的三个面试题
2015/07/23 面试题
零件设计自荐信范文
2013/11/27 职场文书
报到证丢失证明
2014/01/11 职场文书
创意活动策划书
2014/01/15 职场文书
安全生产投入制度
2014/01/29 职场文书
巡警年度自我鉴定
2014/02/21 职场文书
简单的项目建议书模板
2014/03/12 职场文书
给校长的建议书
2014/03/12 职场文书
安全生产月宣传标语
2014/10/06 职场文书
大足石刻导游词
2015/02/02 职场文书
安全教育片观后感
2015/06/17 职场文书
2016清明节森林防火广播稿
2015/12/17 职场文书
解决golang在import自己的包报错的问题
2021/04/29 Golang
解决SpringCloud Feign传对象参数调用失败的问题
2021/06/23 Java/Android
在Docker容器中部署SQL Server
2022/04/11 Servers