您好,登錄后才能下訂單哦!
這篇文章主要介紹了yii2中使用php判斷圖片是否存在的方法,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
yii2中使用php判斷圖片是否存在
1、file_exists()函數(shù)
file_exists() 函數(shù)檢查文件或目錄是否存在。
如果指定的文件或目錄存在則返回 true,否則返回 false。
eg: file_exists(path);其中的參數(shù)path必須是路徑,不能是url不然會(huì)一直返回false;
注意:
1、文件的任何上級(jí)目錄,只有寫權(quán)限時(shí)報(bào)文件不存在;
2、文件的任何上級(jí)目錄,只有讀權(quán)限時(shí)也報(bào)文件不存在;
3、而當(dāng)所有上級(jí)目錄都有執(zhí)行權(quán)限的時(shí)候,報(bào)文件是存在的,一切都正常。
說明file_exists()在判斷文件是否存在的時(shí)候是遞歸判斷每個(gè)目錄是不是有執(zhí)行權(quán)限。
2、file_get_contents()函數(shù)
file_get_contents — 將整個(gè)文件讀入一個(gè)字符串
如果失敗,file_get_contents() 將返回 FALSE。
果要打開有特殊字符的 URL (比如說有空格),就需要使用 urlencode() 進(jìn)行 URL 編碼。
但是此函數(shù)如果請(qǐng)求比較多,文件比較大,那么可能會(huì)超時(shí)未響應(yīng),導(dǎo)致服務(wù)器掛掉
要設(shè)置file_get_contents函數(shù)的超時(shí)時(shí)間,可以用resource $context的timeout參數(shù),代碼如下:
$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方法
實(shí)現(xiàn)的功能:
1、實(shí)現(xiàn)遠(yuǎn)程獲取和采集內(nèi)容
2、實(shí)現(xiàn)PHP 網(wǎng)頁(yè)版的FTP上傳下載
3、實(shí)現(xiàn)模擬登陸:去一個(gè)郵件系統(tǒng),curl可以模擬cookies
4、實(shí)現(xiàn)接口對(duì)接(API),數(shù)據(jù)傳輸?shù)龋和ㄟ^一個(gè)平臺(tái)發(fā)送短信啊,抓取和傳遞所傳輸?shù)男畔ⅰ?/p>
5、實(shí)現(xiàn)模擬Cookie等:登陸的狀態(tài)下才可以操作一些屬性。
如何使用CURL功能:
默認(rèn)情況加PHP是不支持CURL的,需要在php.ini中開啟該功能
;extension=php_curl.dll前面的分號(hào)去掉
1 整個(gè)操作過程中第一步是用curl_init()函數(shù)進(jìn)行初始化
2.用curl_setopt()函數(shù)進(jìn)行設(shè)置選項(xiàng)。
3.設(shè)置后,進(jìn)行執(zhí)行事務(wù) curl_exec($curl);
4 最后關(guān)閉curl_close();
兼容get和post方法的curl;
function curl($url, $type = 'get', $post_data = null, $second = 30) { $ch = curl_init(); //設(shè)置超時(shí) 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); // //設(shè)置header curl_setopt($ch, CURLOPT_HEADER, false); //要求結(jié)果為字符串且輸出到屏幕上 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); if ('post' == $type) { curl_setopt($ch, CURLOPT_POST, 1); //開啟POST curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data); //POST數(shù)據(jù) } $output = curl_exec($ch); curl_close($ch); return $output; //返回或者顯示結(jié)果 }
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“yii2中使用php判斷圖片是否存在的方法”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。