在我們日常的開發中,常常需要用到判斷圖片是否存在,存在則顯示,不存在則顯示預設圖片,那麼我們用到的判斷有哪些呢?今天我們就來看看下幾個常用的方法。
yii2中使用php判斷圖片是否存在
1、file_exists()函數
#file_exists() 函數檢查檔案或目錄是否存在。
如果指定的檔案或目錄存在則傳回 true,否則傳回 false。
eg: file_exists(path);其中的參數path必須是路徑,不能是url不然會一直回傳false;
注意:
## 1、文件的任何上級目錄,只有寫權限時報文件不存在;
2、文件的任何上級目錄,只有讀權限時也報文件不存在;
#3、而當所有上級目錄都有執行權限的時候,報檔是存在的,一切都正常。
說明file_exists()在判斷檔案是否存在的時候是遞迴判斷每個目錄是不是有執行權限。
2、file_get_contents()函數file_get_contents — 將整個檔案讀入字串
如果失敗,file_get_contents() 將會傳回 FALSE。
果實要開啟有特殊字元的 URL (例如有空格),就需要使用 urlencode() 來進行 URL 編碼。
但是此函數如果請求比較多,檔案比較大,那麼可能會逾時未回應,導致伺服器掛掉要設定file_get_contents函數的逾時時間,可以用resource $context的timeout參數,程式碼如下:
$opts = array( 'http'=>array( 'method'=>"GET", 'timeout'=>10, ) ); $context = stream_context_create($opts); $html =file_get_contents('http://www.example.com', false, $context); echo $html;3、curl方法
#實作的功能:
1、實作遠端取得與擷取內容
2、實作PHP 網頁版的FTP上傳下載
3、實現模擬登陸:去一個郵件系統,curl可以模擬cookies4、實作介面對接(API),資料傳輸等等:透過一個平台發送簡訊啊,抓取和傳遞所傳輸的訊息。
###5、實作模擬Cookie等:登陸的狀態下才可以操作一些屬性。 ######如何使用CURL功能:######預設情況加PHP是不支援CURL的,需要在php.ini中開啟該功能########;extension=php_curl. dll###前面的分號去掉######1 整個操作過程中第一步是用curl_init()函數進行初始化######2.用curl_setopt()函數進行設定選項。 ######3.設定後,執行交易curl_exec($curl);#######4 最後關閉curl_close();######相容get和post方法的curl;###function curl($url, $type = 'get', $post_data = null, $second = 30) { $ch = curl_init(); //设置超时 curl_setopt($ch, CURLOPT_TIMEOUT, $second); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); // //设置header curl_setopt($ch, CURLOPT_HEADER, false); //要求结果为字符串且输出到屏幕上 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); if ('post' == $type) { curl_setopt($ch, CURLOPT_POST, 1); //开启POST curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data); //POST数据 } $output = curl_exec($ch); curl_close($ch); return $output; //返回或者显示结果 }###相關文章教學推薦:###yii教學#######
以上是yii2中使用php判斷圖片是否存在的詳細內容。更多資訊請關注PHP中文網其他相關文章!