Maison  >  Article  >  développement back-end  >  Comment déboguer les messages d'erreur curl en php

Comment déboguer les messages d'erreur curl en php

coldplay.xixi
coldplay.xixioriginal
2020-08-17 10:27:384066parcourir

Comment déboguer les informations d'erreur curl en PHP : 1. Utilisez les fonctions [curl_errno] et [curl_error] pour renvoyer respectivement le code d'erreur HTTP et la catégorie d'erreur ; 2. Définissez [CURLOPT_VERBOSE] sur true et définissez-le sur ; Un fichier ouvert avec fopen.

Comment déboguer les messages d'erreur curl en php

Comment déboguer les messages d'erreur curl en php :

La première méthode, d'abord Ce qui peut être utilisé, ce sont les fonctions curl_errno et curl_error, qui renvoient respectivement le code d'erreur HTTP et la catégorie d'erreur. Par exemple :

<?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);
?>

Deuxièmement, si vous avez besoin d'obtenir des informations plus détaillées, vous pouvez utiliser la fonction curl_getinfo. Par exemple :

<?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);
?>

Après avoir défini l'option CURLINFO_HEADER_OUT, le tableau renvoyé par la fonction curl_getinfo contiendra les informations d'en-tête de la requête cURL. Pour voir les informations d'en-tête de réponse, vous pouvez définir l'option CURLOPT_HEADER sur true dans curl_setopt.

curl_exec Lorsque la fonction est exécutée avec succès, les informations du corps de la réponse seront traitées en fonction de la valeur de l'option CURLOPT_RETURNTRANSFER : si elle est vraie, elle sera renvoyée sous forme de chaîne, si elle l'est false, il sera affiché directement. Le résultat est FALSE si l'exécution échoue. En d'autres termes, si l'exécution échoue (en supposant qu'il s'agit d'une erreur 400), le texte de la réponse (qui peut contenir des informations d'erreur plus spécifiques) ne peut pas être vu à partir du résultat de la fonction curl_exec. Il existe deux façons de voir le texte de la réponse. La première méthode consiste à définir 400 comme code de réussite. L'exemple est le suivant :

curl_setopt($ch, CURLOPT_FAILONERROR, false);
curl_setopt($ch, CURLOPT_HTTP200ALIASES, array(400));

La deuxième méthode consiste à définir sur true et à définir CURLOPT_VERBOSE pour utiliser fopen. déposer. De cette manière, cURL enregistrera toutes les informations d'interaction avec le serveur dans ce fichier. CURLOPT_STDERR

Recommandations d'apprentissage associées :

programmation php (vidéo)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn