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 输出简单动态WAP页面
Jun 09 PHP
PHP中文处理 中文字符串截取(mb_substr)和获取中文字符串字数
Nov 10 PHP
PHP连接SQLSERVER 注意事项(附dll文件下载)
Jun 28 PHP
注册页面之前先验证用户名是否存在的php代码
Jul 14 PHP
PHP5各个版本的新功能和新特性总结
Mar 16 PHP
解决PhpMyAdmin中导入2M以上大文件限制的方法分享
Jun 06 PHP
ThinkPHP表单自动提交验证实例教程
Jul 18 PHP
php Imagick获取图片RGB颜色值
Jul 28 PHP
php实现表单多按钮提交action的处理方法
Oct 24 PHP
PHP页面跳转操作实例分析(header方法)
Sep 28 PHP
使用php完成常见的文件上传功能(推荐)
Jan 13 PHP
Thinkphp5框架异常处理操作实例分析
Jun 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的可变变量名的使用方法分享
2012/02/05 PHP
php简单获取目录列表的方法
2015/03/24 PHP
PHP生成唯一订单号的方法汇总
2015/04/16 PHP
PHP设计模式之观察者模式实例
2016/02/22 PHP
php 的多进程操作实践案例分析
2020/02/28 PHP
PHP autoload使用方法及步骤详解
2020/09/05 PHP
js 页面刷新location.reload和location.replace的区别小结
2009/12/24 Javascript
JS无法捕获滚动条上的mouse up事件的原因猜想
2012/03/21 Javascript
JavaScript调用客户端Java程序的方法
2015/07/27 Javascript
jQuery自定义数值抽奖活动代码
2016/06/11 Javascript
只需五句话搞定JavaScript作用域(经典)
2016/07/26 Javascript
AngularJS基础 ng-options 指令详解
2016/08/02 Javascript
jQuery.ajax 跨域请求webapi设置headers的解决方案
2016/08/08 Javascript
AngularJS Select(选择框)使用详解
2017/01/18 Javascript
jquery实现超简单的瀑布流布局【推荐】
2017/03/08 Javascript
ES6新特性之数组、Math和扩展操作符用法示例
2017/04/01 Javascript
认识jQuery的Promise的具体使用方法
2017/10/10 jQuery
在Python的Flask框架中实现全文搜索功能
2015/04/20 Python
python解决字符串倒序输出的问题
2018/06/25 Python
python flask实现分页的示例代码
2018/08/02 Python
Python 按字典dict的键排序,并取出相应的键值放于list中的实例
2019/02/12 Python
python文件转为exe文件的方法及用法详解
2019/07/08 Python
python实现ip地址查询经纬度定位详解
2019/08/30 Python
JetBrains PyCharm(Community版本)的下载、安装和初步使用图文教程详解
2020/03/19 Python
canvas 绘图时位置偏离的问题解决
2020/09/16 HTML / CSS
施华洛世奇水晶荷兰官方网站:SWAROVSKI荷兰
2017/05/12 全球购物
如何将整数int转换成字串String
2014/03/21 面试题
实习鉴定评语
2014/01/19 职场文书
对祖国的寄语大全
2014/04/11 职场文书
协议书的格式
2014/04/23 职场文书
理想演讲稿范文
2014/05/21 职场文书
村安全生产责任书
2014/08/25 职场文书
机关干部个人对照检查材料思想汇报
2014/09/28 职场文书
2016年党员创先争优公开承诺书
2016/03/25 职场文书
Java中多线程下载图片并压缩能提高效率吗
2021/07/01 Java/Android
Java实现学生管理系统(IO版)
2022/02/24 Java/Android