ホームページ  >  記事  >  バックエンド開発  >  PHPでcurlエラーメッセージをデバッグする方法

PHPでcurlエラーメッセージをデバッグする方法

coldplay.xixi
coldplay.xixiオリジナル
2020-08-17 10:27:383953ブラウズ

php でカール エラー情報をデバッグする方法: 1. 関数 [curl_errno] と [curl_error] を使用して、それぞれ HTTP エラー コードとエラー カテゴリを返します; 2. [CURLOPT_VERBOSE] を true に設定し、次のように設定します。 fopen で開かれたファイル。

PHPでcurlエラーメッセージをデバッグする方法

php でカール エラー メッセージをデバッグする方法:

最初の方法、First使用できるのは curl_errno 関数と curl_error 関数で、それぞれ HTTP エラー コードとエラー カテゴリを返します。例:

<?php
$ch = curl_init(&#39;http://example.com/&#39;);
curl_exec($ch);
if (curl_errno($ch)) {
    echo &#39;Curl error: &#39; . curl_error($ch);
}
curl_close($ch);
?>

次に、より詳細な情報を取得する必要がある場合は、curl_getinfo 関数を使用できます。例:

<?php
$ch = curl_init(&#39;http://example.com/&#39;);
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 プログラミング
(ビデオ)

以上がPHPでcurlエラーメッセージをデバッグする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。