Memahami Medan Catatan Curl dan Menyahpepijat dalam PHP
Apabila bekerja dengan PHP dan Curl, ia boleh memberi manfaat untuk memeriksa medan siaran dalam permintaan untuk tujuan penyahpepijatan. Satu cara untuk mencapai matlamat ini ialah dengan menggunakan pilihan CURLOPT_VERBOSE.
Menggunakan CURLOPT_VERBOSE untuk Penyahpepijatan
Pilihan CURLOPT_VERBOSE mendayakan output maklumat verbose semasa permintaan Curl. Untuk menggunakannya dengan berkesan, anda boleh menetapkannya kepada benar dan mengarahkan output ke fail sementara menggunakan 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);
Selepas melaksanakan permintaan Curl, anda boleh membaca maklumat verbose daripada fail sementara:
// 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";
Log verbose akan mengandungi maklumat terperinci tentang permintaan, termasuk siaran medan.
Metrik Penyahpepijatan Tambahan
Selain memeriksa medan siaran, Curl menyediakan maklumat tambahan melalui curl_getinfo. Fungsi ini mendapatkan semula metrik tentang permintaan terakhir, seperti URL, kod HTTP dan butiran masa.
$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";
Dengan memanfaatkan teknik penyahpepijatan ini, anda boleh memperoleh cerapan berharga tentang permintaan Curl anda dan menentukan sebarang isu dengan pengendalian medan pos.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Nyahpepijat Medan POST dalam PHP Menggunakan Curl?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!