php でカール エラー情報をデバッグする方法: 1. 関数 [curl_errno] と [curl_error] を使用して、それぞれ HTTP エラー コードとエラー カテゴリを返します; 2. [CURLOPT_VERBOSE] を true に設定し、次のように設定します。 fopen で開かれたファイル。
php でカール エラー メッセージをデバッグする方法:
最初の方法、First使用できるのは curl_errno
関数と curl_error
関数で、それぞれ HTTP エラー コードとエラー カテゴリを返します。例:
<?php $ch = curl_init('http://example.com/'); curl_exec($ch); if (curl_errno($ch)) { echo 'Curl error: ' . curl_error($ch); } curl_close($ch); ?>
次に、より詳細な情報を取得する必要がある場合は、curl_getinfo
関数を使用できます。例:
<?php $ch = curl_init('http://example.com/'); curl_setopt($ch, CURLINFO_HEADER_OUT, true); curl_exec($ch); if (!curl_errno($ch)) { print_r(curl_getinfo($ch)); } curl_close($ch); ?>
CURLINFO_HEADER_OUT
オプションを設定すると、curl_getinfo 関数によって返される配列には、cURL リクエストのヘッダー情報が含まれます。応答ヘッダー情報を表示するには、curl_setopt で
CURLOPT_HEADER オプションを true に設定します。
curl_exec 関数が正常に実行されると、応答本文の情報は
CURLOPT_RETURNTRANSFER オプションの値に従って処理されます。これが true の場合、次のようになります。文字列として返され、false の場合は直接出力されます。実行が失敗した場合、結果は FALSE になります。つまり、実行が失敗した場合 (400 エラーであると仮定)、curl_exec 関数の結果からは応答テキスト (より具体的なエラー情報が含まれる可能性があります) を確認できません。応答テキストを表示するには 2 つの方法があります。 1 つ目の方法は、成功コードとして 400 を設定することです。例は次のとおりです:
curl_setopt($ch, CURLOPT_FAILONERROR, false); curl_setopt($ch, CURLOPT_HTTP200ALIASES, array(400));
2 つ目の方法は、CURLOPT_VERBOSE を true に設定し、 CURLOPT_STDERR## を設定することです。 # は fopen で開かれたファイルに設定されます。このようにして、cURL はサーバーとのすべての対話情報をこのファイルに記録します。
関連する学習に関する推奨事項:
(ビデオ)
以上がPHPでcurlエラーメッセージをデバッグする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。