php篩選不存在的圖片資源
方法一:
最簡單的方法就是用fopen(),看看文件能否打開,能打就文件當(dāng)然就存在。
<?php $url = 'http://www.dbjr.com.cn/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鏈接到執(zhí)行的url也就是圖片或者文件的鏈接
初始一個變量為false
或者打開鏈接的head頭信息 每一個http請求都會有一個http Code
我們就根據(jù)這個code去驗證
如果返回code 是200 證明資源存在 給之前的變量一個true的值 否則不予賦值
方法三:
CURL 方法
CURL是個很好用的類庫,下面看下如何用它來判斷。
<?php $url2 = 'http://www.dbjr.com.cn/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()執(zhí)行完之后如果文件不存在,會返回如下信息:
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,有的話文件就不存在。
以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。
相關(guān)文章
PHP在網(wǎng)頁中動態(tài)生成PDF文件詳細(xì)教程
這篇文章主要介紹了PHP在網(wǎng)頁中動態(tài)生成PDF文件詳細(xì)教程,本文用一個需求為引,詳細(xì)介紹每一步驟的做法,并配有大量圖片說明,需要的朋友可以參考下2014-07-07laravel 5異常錯誤:FatalErrorException in Handler.php line 38的解決
這篇文章主要給大家介紹了關(guān)于laravel 5異常錯誤:FatalErrorException in Handler.php line 38的解決方法,文中將解決方法介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-10-10使用php的HTTP請求的庫Requests實現(xiàn)美女圖片墻
這篇文章主要介紹了使用php的HTTP請求的庫Requests實現(xiàn)美女圖片墻的方法,十分簡單實用,需要的朋友可以參考下2015-02-02thinkphp實現(xiàn)面包屑導(dǎo)航(當(dāng)前位置)例子分享
今天把博客一些細(xì)節(jié)完善了一下,其中修改了一下欄目頁和文章頁中的“當(dāng)前位置”。2014-05-05PHP substr()函數(shù)參數(shù)解釋及用法講解
substr() 函數(shù)返回字符串的一部分。這篇文章給大家介紹了PHP substr()函數(shù)參數(shù)解釋及用法講解,需要的朋友參考下2017-11-11Laravel 解決composer相關(guān)操作提示php相關(guān)異常的問題
今天小編就為大家分享一篇Laravel 解決composer相關(guān)操作提示php相關(guān)異常的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-10-10Laravel框架FormRequest中重寫錯誤處理的方法
這篇文章主要介紹了Laravel框架FormRequest中重寫錯誤處理的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-02-02Zend?Framework基于Command命令行建立Zend?Framework項目的方法
這篇文章主要介紹了Zend?Framework基于Command命令行建立Zend?Framework項目的方法,較為詳細(xì)的分析了使用Command命令行建立Zend?Framework框架的具體操作步驟與相關(guān)注意事項,需要的朋友可以參考下2017-02-02