溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

yii2中使用php判斷圖片是否存在的方法

發(fā)布時(shí)間:2021-01-13 14:22:33 來源:億速云 閱讀:330 作者:小新 欄目:編程語言

這篇文章主要介紹了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í)!

向AI問一下細(xì)節(jié)

免責(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)容。

AI