php筛选不存在的图片资源


Posted in PHP onApril 28, 2015

方法一:

最简单的方法就是用fopen(),看看文件能否打开,能打就文件当然就存在。

<?php
$url = 'https://3water.com/images/test.jpg';

if( @fopen( $url, 'r' ) ) 
{ 
 echo 'File Exits';
} 
else 
{
 echo 'File Do Not Exits';
}
?>



方法二:


/** 
   * 筛选不存在的图片资源 
   * 
   * @author wanggeng <wanggeng123@vip.qq.com> 
   * @return vodi 
   */ 
   
  private static function _checkAll($url) 
  {  
    $curl = curl_init($url); 
    curl_setopt($curl, CURLOPT_NOBODY, true); 
    $result = false; 
    $res = curl_exec($curl); 
    if ($res !== false){ 
      $statusCode = curl_getinfo($curl, CURLINFO_HTTP_CODE); 
      if($statusCode == 200) { 
        $result = true; 
      } 
    } 
    curl_close($curl); 
    return $result; 
  }

首先建立一个curl链接到执行的url也就是图片或者文件的链接
初始一个变量为false
或者打开链接的head头信息 每一个http请求都会有一个http Code
我们就根据这个code去验证
如果返回code 是200 证明资源存在 给之前的变量一个true的值 否则不予赋值

方法三:

CURL 方法

CURL是个很好用的类库,下面看下如何用它来判断。

<?php
$url2 = 'https://3water.com/test.jpg';

$ch = curl_init();
$timeout = 10;
curl_setopt ($ch, CURLOPT_URL, $url2);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);

$contents = curl_exec($ch);
//echo $contents;
if (preg_match("/404/", $contents)){
 echo '文件不存在';
}
?>

curl_exec()执行完之后如果文件不存在,会返回如下信息:

HTTP/1.1 404 Not Found
Date: Tue, 14 Feb 2012 05:08:34 GMT
Server: Apache
Accept-Ranges: bytes
Content-Length: 354
Content-Type: text/html

用正则看看是否有404,有的话文件就不存在。

以上所述就是本文的全部内容了,希望大家能够喜欢。

PHP 相关文章推荐
Win2000+Apache+MySql+PHP4+PERL安装使用小结
Oct 09 PHP
给初学PHP的5个入手程序
Nov 23 PHP
PHP可变函数的使用详解
Jun 14 PHP
如何使用PHP实现javascript的escape和unescape函数
Jun 29 PHP
php求正负数数组中连续元素最大值示例
Apr 11 PHP
PHP对象相互引用的内存溢出实例分析
Aug 28 PHP
Laravel 5框架学习之子视图和表单复用
Apr 09 PHP
详解php魔术方法(Magic methods)的使用方法
Feb 14 PHP
php表单加入Token防止重复提交的方法分析
Oct 10 PHP
php 修改上传文件大小限制实例详解
Oct 23 PHP
YII框架常用技巧总结
Apr 27 PHP
Laravel中正确地返回HTTP状态码方法示例
Sep 10 PHP
php+ajax实现无刷新动态加载数据技术
Apr 28 #PHP
php恢复数组的key为数字序列的方法
Apr 28 #PHP
php递归调用删除数组空值元素的方法
Apr 28 #PHP
php删除文本文件中重复行的方法
Apr 28 #PHP
php实现简单的语法高亮函数实例分析
Apr 27 #PHP
php转换颜色为其反色的方法
Apr 27 #PHP
PHP结合jQuery.autocomplete插件实现输入自动完成提示的功能
Apr 27 #PHP
You might like
PHP中HTTP方式下的Gzip压缩传输方法举偶
2007/02/15 PHP
php判断GIF图片是否为动画的方法
2020/09/04 PHP
php生成PDF格式文件并且加密
2015/06/22 PHP
让焦点自动跳转
2006/07/01 Javascript
学习ExtJS 访问容器对象
2009/10/07 Javascript
javascript设计模式之工厂模式示例讲解
2014/03/04 Javascript
jquery禁止回车触发表单提交
2014/12/12 Javascript
jQuery实现自定义事件的方法
2015/04/17 Javascript
jQuery Easyui DataGrid点击某个单元格即进入编辑状态焦点移开后保存数据
2016/08/15 Javascript
Bootstrap对话框使用实例讲解
2016/09/24 Javascript
原生js仿jquery实现对Ajax的封装
2016/10/04 Javascript
jquery实现百叶窗效果
2017/01/12 Javascript
JavaScript错误处理和堆栈追踪详解
2017/04/18 Javascript
JavaScript截屏功能的实现代码
2017/07/28 Javascript
nodejs发送http请求时遇到404长时间未响应的解决方法
2017/12/10 NodeJs
vue.js中$set与数组更新方法
2018/03/08 Javascript
js实现登录拖拽窗口
2020/02/10 Javascript
vue-iview动态新增和删除的方法
2020/06/17 Javascript
Vue-cli打包后如何本地查看的操作
2020/09/02 Javascript
Vue+Java 通过websocket实现服务器与客户端双向通信操作
2020/09/22 Javascript
easy_install python包安装管理工具介绍
2013/02/10 Python
使用Python获取CPU、内存和硬盘等windowns系统信息的2个例子
2014/04/15 Python
对Python的Django框架中的项目进行单元测试的方法
2016/04/11 Python
对PyTorch torch.stack的实例讲解
2018/07/30 Python
使用python list 查找所有匹配元素的位置实例
2019/06/11 Python
Python流程控制常用工具详解
2020/02/24 Python
python3 xpath和requests应用详解
2020/03/06 Python
Python基于smtplib协议实现发送邮件
2020/06/03 Python
用python绘制樱花树
2020/10/09 Python
详解Python流程控制语句
2020/10/28 Python
购买限量版收藏品、珠宝和礼品:Bradford Exchange
2016/09/23 全球购物
汉语言文学毕业生求职信
2013/10/01 职场文书
装修施工安全责任书
2014/07/24 职场文书
就业协议书
2014/09/12 职场文书
副总经理岗位职责范本
2015/04/08 职场文书
公务员爱岗敬业心得体会
2016/01/25 职场文书