内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

PHP的curl功能擴(kuò)展如何使用

今天小編給大家分享的是PHP的curl功能擴(kuò)展如何使用,很多人都不太了解,今天小編為了讓大家更加了解PHP的curl功能擴(kuò)展,所以給大家總結(jié)了以下內(nèi)容,一起往下看吧。一定會(huì)有所收獲的哦。

在永康等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè) 網(wǎng)站設(shè)計(jì)制作按需定制制作,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),成都全網(wǎng)營(yíng)銷,外貿(mào)營(yíng)銷網(wǎng)站建設(shè),永康網(wǎng)站建設(shè)費(fèi)用合理。

PHP的curl功能提供了很多函數(shù),需要將這些函數(shù)按特定的步驟組合到一起,我們先來(lái)了解下PHP建立curl請(qǐng)求的基本步驟。

$ch = curl_init(); // 創(chuàng)建一個(gè)新的CURL資源賦給變量$ch
curl_setopt($ch, CURLOPT_URL, $url); // 設(shè)置URL
$response = curl_exec($ch); // 執(zhí)行,獲取URL并輸出到瀏覽器
curl_close($ch); // 釋放資源

如果我們希望獲取內(nèi)容但不輸出,可以使用 CURLOPT_RETURNTRANSFER 參數(shù),并設(shè)置其值為非0或者true值。

代碼如下:

curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

我們可以通設(shè)置函數(shù)curl_setopt()的不同參數(shù),可以獲得不同的結(jié)果,這也是CURL擴(kuò)展的強(qiáng)大之處。curl_setopt()函數(shù)的常用參數(shù)選項(xiàng)具體可查閱官方文檔,此處就不列舉。

下面是我常用的curl get和post請(qǐng)求的方法:

get請(qǐng)求:

public function httpGet(string $url = '')
    {
        // 記錄請(qǐng)求信息的日志
        // todo
        
        try {
            $ch = curl_init();
            curl_setopt($ch, CURLOPT_URL, $url);
            curl_setopt($ch, CURLOPT_HEADER, 0);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($ch, CURLOPT_TIMEOUT, 60);
            //https 請(qǐng)求
            if (strlen($url) > 5 && strtolower(substr($url, 0, 5)) == "https") {
                curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
                curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
            }
            $response = curl_exec($ch);
            $errorCode = curl_errno($ch);
            curl_close($ch);
            if (!empty($errorCode)) {
                // 可記錄錯(cuò)誤碼日志
                return null;
            }
            // 記錄返回結(jié)果日志
            return $response;
        } catch (\Exception $e) {
            $errorLog = [
                'msg' => $e->getMessage(),
                'trace' => $e->getTraceAsString(),
                'data' => [
                    'url' => $url,
                ]
            ];
            // 記錄錯(cuò)誤日志
            return null;
        }
    }
```php

POST請(qǐng)求:

public function httpPost(string $url = '', array $data = [])
{
        // 記錄請(qǐng)求信息的日志
        // todo
    try {
        $jsonData = json_encode($data);
        $curl = curl_init();
        curl_setopt($curl, CURLOPT_URL, $url);
        curl_setopt($curl, CURLOPT_POST, 1);
        curl_setopt($curl, CURLOPT_POSTFIELDS, $jsonData);
        curl_setopt($curl, CURLOPT_HEADER, 0);
        curl_setopt($curl, CURLOPT_TIMEOUT, 60);
        curl_setopt($curl, CURLOPT_HTTPHEADER, [
            'Content-Type: application/json; charset=utf-8',
            'Content-Length:' . strlen($jsonData)
        ]);
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
        //https 請(qǐng)求
        if (strlen($url) > 5 && strtolower(substr($url, 0, 5)) == "https") {
            curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
            curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
        }
        $result = curl_exec($curl);
        $errorCode = curl_errno($curl);
        curl_close($curl);
        if (!empty($errorCode)) {
            // 可記錄錯(cuò)誤碼日志
            return null;
        }
        // 記錄返回結(jié)果日志
        return json_decode($result, true);
    } catch (\Exception $e) {
        $errorData = [
            'msg' => $e->getMessage(),
            'trace' => $e->getTraceAsString(),
            'data' => [
                'url' => $url,
                'postData' => $data
            ]
        ];
        // 記錄錯(cuò)誤日志
        return null;
    }
}

關(guān)于PHP的curl功能擴(kuò)展如何使用就分享到這里了,當(dāng)然并不止以上和大家分析的辦法,不過(guò)小編可以保證其準(zhǔn)確性是絕對(duì)沒(méi)問(wèn)題的。希望以上內(nèi)容可以對(duì)大家有一定的參考價(jià)值,可以學(xué)以致用。如果喜歡本篇文章,不妨把它分享出去讓更多的人看到。

當(dāng)前文章:PHP的curl功能擴(kuò)展如何使用
文章轉(zhuǎn)載:http://www.rwnh.cn/article40/pgchho.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、標(biāo)簽優(yōu)化、網(wǎng)站設(shè)計(jì)、靜態(tài)網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)、手機(jī)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁(yè)設(shè)計(jì)公司
辽中县| 临汾市| 五峰| 怀宁县| 钟祥市| 隆安县| 凯里市| 通道| 青冈县| 泸定县| 斗六市| 岑溪市| 大化| 尚义县| 林口县| 五华县| 溆浦县| 高雄县| 榆林市| 武胜县| 电白县| 伽师县| 乌鲁木齐县| 边坝县| 永仁县| 楚雄市| 札达县| 永和县| 淮南市| 大港区| 鹰潭市| 建德市| 涿鹿县| 长宁县| 高密市| 额尔古纳市| 黄大仙区| 玉屏| 凤庆县| 乐亭县| 贺兰县|