php實現的http請求封裝樣本

來源:互聯網
上載者:User
本文執行個體講述了php的http請求封裝。分享給大家供大家參考,具體如下:

/*** 發送HTTP要求方法,目前只支援CURL發送請求* @param string $url  請求URL* @param array $params 請求參數* @param string $method 要求方法GET/POST* @return array $data  響應資料*/protected function http($url, $params, $method = 'GET', $header = array(), $multi = false) {    $opts = array(CURLOPT_TIMEOUT => 30, CURLOPT_RETURNTRANSFER => 1, CURLOPT_SSL_VERIFYPEER => false, CURLOPT_SSL_VERIFYHOST => false, CURLOPT_HTTPHEADER => $header);    /* 根據請求類型設定特定參數 */    switch(strtoupper($method)) {      case 'GET' :        $opts[CURLOPT_URL] = $url . '&' . http_build_query($params);        dump($opts[CURLOPT_URL]);        break;      case 'POST' :        //判斷是否傳輸檔案        $params = $multi ? $params : http_build_query($params);        $opts[CURLOPT_URL] = $url;        dump($opts[CURLOPT_URL]);        $opts[CURLOPT_POST] = 1;        $opts[CURLOPT_POSTFIELDS] = $params;        break;      default :        throw new Exception('不支援的請求方式!');    }    /* 初始化並執行curl請求 */    $ch = curl_init();    curl_setopt_array($ch, $opts);    $data = curl_exec($ch);    $error = curl_error($ch);    curl_close($ch);    if ($error)      throw new Exception('請求發生錯誤:' . $error);    return $data;}

希望本文所述對大家PHP程式設計有所協助。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.