嘗試透過 CURL 從表單提交資料時,使用者可能會遇到「數組到字串轉換錯誤」。當將多維數組發佈到在不同伺服器上執行的 PHP 腳本時,會發生這種情況。由於 CURLOPT_POSTFIELDS 需要一個數組,因此使用者無法使用 http_build_query() 等傳統方法。
要解決此問題,需要一個名為「http_build_query_for_curl」的自訂函數。此函數遍歷多維數組並將其轉換為適合 CURL 的格式。
要使用此函數,請將多維數組指派給變數並將其作為第一個變數傳遞函數的參數。第二個參數是一個空數組,用來保存轉換後的資料。第三個參數是可選的,指定數組鍵的前綴。
此程式碼的輸出為:
此轉換後的陣列現在可以與 CURLOPT_POSTFIELDS 一起使用,而不會遇到轉換錯誤。
以上是透過 PHP 和 CURL 發布多維數組時如何避免「數組到字串轉換錯誤」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!