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 中的一些经验积累
Oct 09 PHP
PHP 创建标签云函数代码
May 26 PHP
PHP中的Memcache详解
Apr 05 PHP
php对包含html标签的字符串进行截取的函数分享
Jun 19 PHP
PHP操作MySQL事务实例
Nov 05 PHP
php数组随机排序实现方法
Jun 13 PHP
PHP+Javascript实现在线拍照功能实例
Jul 18 PHP
WordPress中缩略图的使用以及相关技巧
Nov 24 PHP
Zend Framework动作助手Redirector用法实例详解
Mar 05 PHP
php版微信公众平台接口开发之智能回复开发教程
Sep 22 PHP
php fseek函数读取大文件两种方法
Oct 12 PHP
thinkPHP批量删除的实现方法分析
Nov 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&amp;MYSQL服务器配置说明
2006/10/09 PHP
深入php之规范编程命名小结
2013/05/15 PHP
PHP查询网站的PR值
2013/10/30 PHP
浅谈PHP中output_buffering
2015/07/13 PHP
php实现网站顶踩功能的完整前端代码
2015/07/19 PHP
初识PHP中的Swoole
2016/04/05 PHP
php使用escapeshellarg时中文被过滤的解决方法
2016/07/10 PHP
Yii2简单实现给表单添加验证码的方法
2016/07/18 PHP
php实现36进制与10进制转换功能示例
2017/01/10 PHP
php解析mht文件转换成html的实例
2017/03/13 PHP
深入分析PHP设计模式
2020/06/15 PHP
javascritp实现input输入框相关限制用法
2007/06/29 Javascript
Node.js和PHP根据ip获取地理位置的方法
2014/03/14 Javascript
JS获取随机数函数可自定义最小值最大值
2014/05/08 Javascript
CSS中position属性之fixed实现div居中
2015/12/14 Javascript
Jquery跨浏览器文本复制插件Zero Clipboard的使用方法
2016/02/28 Javascript
vue.js指令v-model使用方法
2017/03/20 Javascript
基于Vuejs和Element的注册插件的编写方法
2017/07/03 Javascript
浅谈angular.copy() 深拷贝
2017/09/14 Javascript
基于jquery的on和click的区别详解
2018/01/15 jQuery
使用puppeteer爬取网站并抓出404无效链接
2018/12/20 Javascript
详解如何提升JSON.stringify()的性能
2019/06/12 Javascript
electron踩坑之remote of undefined的解决
2020/10/06 Javascript
Flask和Django框架中自定义模型类的表名、父类相关问题分析
2018/07/19 Python
解决python 虚拟环境删除包无法加载的问题
2020/07/13 Python
python中Array和DataFrame相互转换的实例讲解
2021/02/03 Python
深入理解css属性的选择对动画性能的影响
2016/04/20 HTML / CSS
用canvas画心电图的示例代码
2018/09/10 HTML / CSS
澳大利亚领先的宠物用品商店:VetSupply
2017/09/08 全球购物
Crocs欧洲官网:Crocs Europe
2020/01/14 全球购物
文员个人求职自荐信
2013/09/21 职场文书
机关门卫岗位职责
2013/12/30 职场文书
房产公证委托书范本
2014/09/20 职场文书
走进科学观后感
2015/06/18 职场文书
革命电影观后感
2015/06/18 职场文书
教你用Java在个人电脑上实现微信扫码支付
2021/06/13 Java/Android