Maison > Article > développement back-end > Comment déboguer les messages d'erreur curl en php
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 :
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('http://example.com/'); curl_exec($ch); if (curl_errno($ch)) { echo 'Curl error: ' . 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('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); ?>
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!