了解 PHP 中的 Curl 和調試 Post 字段
使用 PHP 和 Curl 時,檢查出於調試目的的請求。實現此目的的一種方法是利用 CURLOPT_VERBOSE 選項。
使用 CURLOPT_VERBOSE 進行偵錯
CURLOPT_VERBOSE 選項在 Curl 請求期間啟用詳細資訊輸出。為了有效地使用它,您可以將其設為 true 並使用 CURLOPT_STDERR 將輸出定向到臨時檔案。
// Enable verbose output curl_setopt($curlHandle, CURLOPT_VERBOSE, true); // Direct output to a temporary file $streamVerboseHandle = fopen('php://temp', 'w+'); curl_setopt($curlHandle, CURLOPT_STDERR, $streamVerboseHandle);
執行 Curl 請求後,您可以從臨時文件中讀取詳細信息:
// Execute the request $result = curl_exec($curlHandle); // Read and display verbose log rewind($streamVerboseHandle); $verboseLog = stream_get_contents($streamVerboseHandle); echo "Curl verbose information:\n<pre class="brush:php;toolbar:false">" . htmlspecialchars($verboseLog) . "\n";
詳細日誌將包含有關請求的詳細信息,包括帖子字段。
其他偵錯指標
除了檢查貼文欄位之外,Curl 透過curl_getinfo 提供其他資訊。此函數會擷取有關上次請求的指標,例如 URL、HTTP 程式碼和計時詳細資訊。
$metrics = ""; // Get HTTP information $metrics .= "HTTP: " . curl_getinfo($curlHandle, CURLINFO_HTTP_CODE) . " (" . curl_getinfo($curlHandle, CURLINFO_REDIRECT_COUNT) . " redirect(s) in " . curl_getinfo($curlHandle, CURLINFO_REDIRECT_TIME) . " secs)\n"; // Get speed information $metrics .= "Speed: " . curl_getinfo($curlHandle, CURLINFO_SPEED_DOWNLOAD) . " (avg.) Up: " . curl_getinfo($curlHandle, CURLINFO_SPEED_UPLOAD) . " (avg.)\n";
透過利用這些偵錯技術,您可以深入了解 Curl 請求並找出任何問題後製現場處理。
以上是如何使用 Curl 偵錯 PHP 中的 POST 欄位?的詳細內容。更多資訊請關注PHP中文網其他相關文章!