php配置curl
① php 使用 CURL 詳解
使用PHP的CURL擴展進行HTTP請求發送,通常涉及以下步驟:
首先,初始化CURL連接句柄;
接著,設置CURL選項;
然後,執行請求並獲取結果;
最後,釋放CURL連接句柄。
以下是一個使用CURL發送HTTP請求的典型示例代碼片段。
初始化和關閉CURL連接的函數分別是curl_init()和curl_close(),操作較為簡便。
執行CURL請求的函數是curl_exec()。若請求成功,函數返回URL的響應數據;若出現錯誤,則返回FALSE。注意,使用全等號判斷輸出是否為FALSE,以區分返回空串和出錯的情況。
curl_setopt()函數是CURL庫中最重要的函數,可以通過設置CURL選項來自定義HTTP請求。在示例代碼中,使用了以下三個重要選項:
CURLOPT_URL:指定請求的URL;
CURLOPT_RETURNTRANSFER:設置為1,使curl_exec()函數的返回值是URL的返回字元串,而非將返回字元串輸出到標准輸出;
CURLOPTLOPT_HEADER:設置為0,表示不返回HTTP頭部信息。
PHP官方網站(php.net/manual/en/funct...)提供了CURL支持的所有選項列表。
使用curl_getinfo()函數可以獲取CURL請求輸出的相關信息。該函數返回一個關聯數組,包含如網路地址、內容編碼、HTTP狀態碼等數據。
curl_getinfo()函數還有一個可選參數opt,通過設置常量,可以返回指定欄位的信息。例如,設置opt為CURLINFO_TOTAL_TIME,則只返回總傳輸消耗的時間。
使用CURL發送GET請求時,需要拼裝格式正確的URL。PHP提供了http_build_query函數,用於將關聯數組轉換為GET請求字元串。結合CURL發送HTTP請求的一般流程,可以創建一個發送GET請求的函數。
使用CURL發送POST請求時,可以通過設置CURLOPT_POSTFIELDS選項,將POST字元串數據放在請求正文中。同時,設置CURL_POST為true,標識請求為POST請求。在POST請求中,也可以傳輸GET數據,只需在URL中拼裝GET請求數據即可。