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 相关文章推荐
PHP学习笔记之三 数据库基本操作
Jan 17 PHP
php中通过虚代理实现延迟加载的实现代码
Jun 10 PHP
PHP中鲜为人知的10个函数
Feb 28 PHP
Codeigniter上传图片出现“You did not select a file to upload”错误解决办法
Jun 12 PHP
thinkPHP实现MemCache分布式缓存功能
Mar 23 PHP
yii2 RBAC使用DbManager实现后台权限判断的方法
Jul 23 PHP
PHP内存缓存功能memcached示例
Oct 19 PHP
PHP互换两个变量值的方法(不用第三变量)
Nov 14 PHP
PHP遍历目录文件的常用方法小结
Feb 03 PHP
总结PHP中初始化空数组的最佳方法
Feb 13 PHP
PHP与Web页面的交互示例详解一
Aug 04 PHP
PHP7 字符串处理机制修改
Mar 09 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的access操作类
2008/04/09 PHP
php 清除网页病毒的方法
2008/12/05 PHP
php修改NetBeans默认字体的大小
2013/07/02 PHP
Ajax和PHP正则表达式验证表单及验证码
2016/09/24 PHP
YII中Ueditor富文本编辑器文件和图片上传的配置图文教程
2017/03/15 PHP
thinkPHP+ajax实现统计页面pv浏览量的方法
2017/03/15 PHP
PHP实现的各类hash算法长度及性能测试实例
2017/08/27 PHP
php爬取天猫和淘宝商品数据
2018/02/23 PHP
JQUERY操作JSON实例代码
2010/02/09 Javascript
基于jquery的jqDnR拖拽溢出的修改
2011/02/12 Javascript
精心挑选的12款优秀的基于jQuery的手风琴效果插件和教程
2012/08/22 Javascript
使用GruntJS构建Web程序之合并压缩篇
2014/06/06 Javascript
Javascript前端UI框架Kit使用指南之Kitjs简介
2014/11/28 Javascript
jquery读取xml文件实现省市县三级联动的方法
2015/05/29 Javascript
JavaScript中定义类的方式详解
2016/01/07 Javascript
Bootstrap项目实战之首页内容介绍(全)
2016/04/25 Javascript
H5移动端图片压缩上传开发流程
2016/11/09 Javascript
浅谈使用splice函数对数组中的元素进行删除时的注意事项
2016/12/04 Javascript
深入浅析JavaScript中的RegExp对象
2017/09/18 Javascript
vue-cli中vue本地实现跨域调试接口
2019/01/16 Javascript
Easyui 关闭jquery-easui tab标签页前触发事件的解决方法
2019/04/28 jQuery
JavaScript Reflect Metadata实现详解
2019/12/12 Javascript
jquery轮播图插件使用方法详解
2020/07/31 jQuery
python+pyqt5实现24点小游戏
2019/01/24 Python
python实现H2O中的随机森林算法介绍及其项目实战
2019/08/29 Python
window环境pip切换国内源(pip安装异常缓慢的问题)
2019/12/31 Python
用Python生成HTML表格的方法示例
2020/03/06 Python
Python3基于print打印带颜色字符串
2020/07/06 Python
HTML5适合的情人节礼物有纪念日期功能
2021/01/25 HTML / CSS
求职简历自我评价范例
2014/03/12 职场文书
项目申报专员岗位职责
2014/07/09 职场文书
2014年机关党建工作总结
2014/11/11 职场文书
2014年外贸业务员工作总结
2014/12/11 职场文书
音乐会主持人开场白
2015/05/28 职场文书
人民的好儿女观后感
2015/06/18 职场文书
安全生产感想
2015/08/07 职场文书