偵測 PHP 中的 cURL 錯誤
在 PHP 中使用 cURL 與遠端伺服器交換資料時,有效處理錯誤至關重要。儘管在傳輸過程中遇到各種錯誤代碼,但您可能無法使用當前代碼識別它們。
理解程式碼
讓我們檢查一下您的程式碼,程式碼嘗試使用cURL 提交數據,但無法偵測錯誤:
$c = curl_init(); curl_setopt($c, CURLOPT_URL, $url); curl_setopt($c, CURLOPT_RETURNTRANSFER, true); curl_setopt($c, CURLOPT_POST, true); curl_setopt($c, CURLOPT_POSTFIELDS, $data); $result = curl_exec($c); if (curl_exec($c) === false) { echo "ok"; } else { echo "error"; } curl_close($c);
使用偵測錯誤curl_error()
要取得有關cURL 操作期間發生的錯誤的訊息,您可以使用curl_error() 函數。以下是包含此技術的程式碼的更新版本:
$ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $your_url); curl_setopt($ch, CURLOPT_FAILONERROR, true); // Required for HTTP error codes to be reported via our call to curl_error($ch) //... curl_exec($ch); if (curl_errno($ch)) { $error_msg = curl_error($ch); } curl_close($ch); if (isset($error_msg)) { // TODO - Handle cURL error accordingly }
透過將 CURLOPT_FAILONERROR 設為 true,cURL 在出現錯誤代碼時將傳回 false,使我們能夠使用 curl_error() 檢索錯誤訊息。然後,您可以使用 $error_msg 字串根據發生的特定錯誤採取適當的操作。
其他資源
有關更多信息,請參閱以下參考資料:
以上是如何有效檢測並處理PHP中的cURL錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!