Obtenir des informations sur les requêtes HTTP via cURL
Exemple d'utilisation
Appelez la fonction sur le résultat du contexte de curl_init()
:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://baraja.cz');
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);
curl_setopt($ch, CURLOPT_NOBODY, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0);
curl_exec($ch);
$info = curl_getinfo($ch);
curl_close($ch);
dump($info);
Tableau des valeurs
La fonction curl_getinfo()
renvoie un tableau associatif à partir duquel les clés et les valeurs individuelles peuvent être récupérées.
Clé | Valeur de l'exemple | Explication |
---|---|---|
url | 'https://baraja.cz/' | URL téléchargée. |
content_type | 'text/html ; charset=utf-8' | Encodage et type de contenu utilisés (revendiqués par le serveur cible). |
http_code | 200 | Code d'état HTTP renvoyé. 200 signifie OK. |
header_size | 462 | Taille de l'en-tête de la requête HTTP en octets. |
request_size | 47 | Taille de la demande. |
filetime | -1 | |
ssl_verify_result | 0 | Vérification SSL. |
redirect_count | 0 | |
total_time | 0.233384 | Temps total passé à attendre une réponse. En secondes. |
namelookup_time | 0.021608 | Temps pris pour résoudre le domaine sur les enregistrements DNS. Spécifié en secondes. |
connect_time | 0.035031 | |
pretransfer_time | 0.187275 | |
upload_size | 0.0 | Taille des données téléchargées en octets. |
size_download | 0.0 | Taille des données téléchargées en octets. |
speed_download | 0.0 | Vitesse de téléchargement en octets par seconde. |
speed_upload | 0.0 | Vitesse de téléchargement en octets par seconde. |
download_content_length | 15522.0 | Taille des données téléchargées en octets. |
upload_content_length | -1.0 | Taille des données téléchargées en octets. |
starttransfer_time | 0.233354 | Indique la valeur TTFB (Time To First Byte) en secondes. |
redirect_time | 0.0 | Temps passé à rediriger vers le téléchargement du contenu canonique. |
redirect_url | '' | |
primary_ip | '76.76.21.21' | De quelle IP le contenu a été téléchargé. |
certinfo | array (0) | Plus de détails sur le certificat du site cible. |
primary_port | 443 | Le port réseau utilisé (80 signifie HTTP, 443 signifie HTTPS). |
local_ip | '192.168.0.186' | Adresse IP locale de la machine qui a envoyé la requête. |
local_port | 56568 | Port de la machine locale depuis laquelle la demande a été envoyée. |
http_version | 3 | Version du protocole HTTP. |
protocole | 2 | |
ssl_verifyresult | 0 | Résultat de la vérification SSL. |
scheme | 'HTTPS' | Protocole au début de l'URL. |
appconnect_time_us | 186220 | Temps nécessaire pour établir la connexion avec le serveur cible. Spécifié en nanosecondes. |
connect_time_us | 35031 | |
namelookup_time_us | 21608 | |
pretransfer_time_us | 187275 | |
redirect_time_us | 0 | Temps passé à rediriger vers le téléchargement du contenu canonique. Donnée en nanosecondes. |
starttransfer_time_us | 233354 | Indique la valeur du temps TTFB (Time To First Byte). En nanosecondes. |
total_time_us | 233384 |
Certaines clés ne sont pas toujours disponibles. Vérifiez toujours l'existence de la clé et la validité de la valeur avant de lire cette dernière.
Jan Barášek En savoir plus sur l'auteur
L'auteur travaille comme développeur principal et architecte logiciel à Prague. Il conçoit et gère de grandes applications web que vous connaissez et utilisez. Depuis 2009, il a acquis une grande expérience qu'il transmet par le biais de ce site web.
Je serai heureux de vous aider:
Contact