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中用文本文件做数据库的实现方法
Mar 27 PHP
Windows下安装Memcached的步骤说明
Apr 25 PHP
php数组函数序列之rsort() - 对数组的元素值进行降序排序
Nov 02 PHP
php 调试利器debug_print_backtrace()
Jul 23 PHP
CI框架中集成CKEditor编辑器的教程
Jun 09 PHP
php向js函数传参的几种方法
Aug 10 PHP
php include类文件超时问题处理
Feb 06 PHP
php使用socket post数据到其它web服务器的方法
Jun 02 PHP
PHP中strnatcmp()函数“自然排序算法”进行字符串比较用法分析(对比strcmp函数)
Jan 07 PHP
详解Yii实现分页的两种方法
Jan 14 PHP
Laravel监听数据库访问,打印SQL的例子
Oct 24 PHP
再谈Yii Framework框架中的事件event原理与应用
Apr 07 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执行速率优化技巧小结
2008/03/15 PHP
linux系统下php安装mbstring扩展的二种方法
2014/01/20 PHP
Yii查询生成器(Query Builder)用法实例教程
2014/09/04 PHP
php单一接口的实现方法
2015/06/20 PHP
PHP7 弃用功能
2021/03/09 PHP
JavaScript Perfection kill 测试及答案
2010/03/23 Javascript
使用隐藏的new来创建对象
2011/03/29 Javascript
jquery打开直接跳到网页最下面、最低端实现代码
2013/04/22 Javascript
node.js中的console.timeEnd方法使用说明
2014/12/09 Javascript
javascript中关于&amp;&amp; 和 || 表达式的小技巧分享
2015/04/10 Javascript
javascript self对象使用详解
2016/10/18 Javascript
Vue的Flux框架之Vuex状态管理器
2017/07/30 Javascript
深入理解Vue 单向数据流的原理
2017/11/09 Javascript
React组件refs的使用详解
2018/02/09 Javascript
mongodb初始化并使用node.js实现mongodb操作封装方法
2019/04/02 Javascript
Vue.js + Nuxt.js 项目中使用 Vee-validate 表单校验
2019/04/22 Javascript
微信小程序云开发之新手环境配置
2019/05/16 Javascript
JS异步宏队列与微队列原理区别详解
2020/07/02 Javascript
python 快速把超大txt文件转存为csv的实例
2018/10/26 Python
python退出命令是什么?详解python退出方法
2018/12/10 Python
详解利用Python scipy.signal.filtfilt() 实现信号滤波
2019/06/05 Python
PYTHON实现SIGN签名的过程解析
2019/10/28 Python
python进程的状态、创建及使用方法详解
2019/12/06 Python
Python unittest单元测试openpyxl实现过程解析
2020/05/27 Python
Python如何爬取qq音乐歌词到本地
2020/06/01 Python
纽约海:Sea New York
2018/11/04 全球购物
short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
2014/09/26 面试题
专营店会计助理岗位职责
2013/11/29 职场文书
成功经营餐厅的创业计划书范文
2013/12/26 职场文书
前台文员我鉴定
2014/01/12 职场文书
环境工程专业自荐信范文
2014/06/24 职场文书
2014副镇长民主生活会个人对照检查材料思想汇报
2014/09/30 职场文书
装修公司工程部经理岗位职责
2015/04/09 职场文书
2016党员学习《反对自由主义》心得体会
2016/01/22 职场文书
2016年社区中秋节活动总结
2016/04/05 职场文书
Nginx限流和黑名单配置
2022/05/20 Servers