使用 CURLOPT_POSTFIELDS 處理 POST 資料
使用curl 進行 POST 請求時,透過 CURLOPT_POSTFIDS 提供資料需要注意其格式。對於簡單的字串參數,需要進行URL編碼。例如,要發布兩個欄位“first”和“last”,其值為“John”和“Smith”,資料字串將為:
first=John&last=Smith
在以下curl程式碼片段中:
$ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); $reply = curl_exec($ch); curl_close($ch);
確保$data 是簡單參數的URL 編碼字串或複雜資料的關聯數組非常重要。對於數組,curl 會自動將 Content-Type 標頭設定為 multipart/form-data。
如果資料是數組,可以使用 http_build_query() 產生查詢字串:
$query = http_build_query($data, '', '&');
透過遵守這些格式指南,您可以使用curl的CURLOPT_POSTFIELDS透過提交資料。
以上是如何正確設定 cURL POST 請求中 CURLOPT_POSTFIELDS 資料的格式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!