(PHP 4 >= 4.0.4, PHP 5, PHP 7)
curl_getinfo — Lit les informations détaillant un transfert cURL
curl_getinfo() lit les informations
concernant le transfert ch
.
ch
Un gestionnaire cURL retourné par la fonction curl_init().
opt
Ce paramètre peut prendre l'une des valeurs suivantes :
CURLINFO_EFFECTIVE_URL
: dernière URL réelle
CURLINFO_HTTP_CODE
: dernier code HTTP reçu
CURLINFO_FILETIME
: date distante du document,
et -1 si la date du document distant est inconnue.
CURLINFO_TOTAL_TIME
: durée de la transaction en
secondes pour le dernier transfert
CURLINFO_NAMELOOKUP_TIME
: durée de résolution
du nom de domaine en secondes
CURLINFO_CONNECT_TIME
: durée d'établissement de
la connexion en secondes
CURLINFO_PRETRANSFER_TIME
: durée en secondes,
entre le début de la transaction et de début du transfert de fichiers
CURLINFO_STARTTRANSFER_TIME
: durée en secondes
jusqu'à ce que le premier octet soit sur le point d'être transféré
CURLINFO_REDIRECT_COUNT
: Nombre de redirections, avec
l'option CURLOPT_FOLLOWLOCATION
activée
CURLINFO_REDIRECT_TIME
: durée en secondes de toutes
les étapes de redirection avant que la transaction finale ne soit débutée,
avec l'option CURLOPT_FOLLOWLOCATION
activée
CURLINFO_REDIRECT_URL
- Avec l'option
CURLOPT_FOLLOWLOCATION
désactivée: URL de
redirection trouvée dans la dernière transaction, qui devra être
interrogé manuellement par la suite. Si l'option
CURLOPT_FOLLOWLOCATION
est activée : cette valeur
est vide. Dans ce cas, l'url de redirection est disponible dans
CURLINFO_EFFECTIVE_URL
CURLINFO_PRIMARY_IP
- Adresse IP de la plus
récente connexion
CURLINFO_PRIMARY_PORT
- Port de destination de
la plus récente connexion
CURLINFO_LOCAL_IP
- Adresse IP locale (source) de
la plus récente connexion
CURLINFO_LOCAL_PORT
- Port local (source) de la
plus récente connexion
CURLINFO_SIZE_UPLOAD
: nombre total
d'octets envoyés
CURLINFO_SIZE_DOWNLOAD
: nombre total
d'octets téléchargés
CURLINFO_SPEED_DOWNLOAD
: vitesse moyenne
de téléchargement
CURLINFO_SPEED_UPLOAD
: vitesse moyenne d'envoi
CURLINFO_HEADER_SIZE
: taille des en-têtes reçus
CURLINFO_HEADER_OUT
: la chaîne de requête envoyée.
Pour que cela fonctionne, appelez curl_setopt() avec
l'option CURLINFO_HEADER_OUT
.
CURLINFO_REQUEST_SIZE
: taille totale des
requêtes envoyées. Actuellement, uniquement pour les requêtes HTTP
CURLINFO_SSL_VERIFYRESULT
: résultat de la
vérification de la certification SSL demandée par
CURLOPT_SSL_VERIFYPEER
CURLINFO_CONTENT_LENGTH_DOWNLOAD
: taille du corps
du téléchargement, lu dans l'en-tête
Content-Length:
CURLINFO_CONTENT_LENGTH_UPLOAD
: taille spécifiée
de l'envoi.
CURLINFO_CONTENT_TYPE
: Content-Type:
du document demandé. NULL
indique que le serveur
n'a pas envoyé d'en-tête Content-Type:
CURLINFO_PRIVATE
- Données privées associées avec
le gestionnaire cURL, précédement défini avec l'option
CURLOPT_PRIVATE
de la fonction
curl_setopt()
Si opt
est fourni, la valeur sera retournée.
Sinon, ce sera un tableau associatif contenant les éléments suivants
(qui correspond à opt
), ou FALSE
si une erreur survient :
CURLINFO_HEADER_OUT
est utilisé via un appel à curl_setopt())
CURLINFO_PRIVATE
.
Version | Description |
---|---|
5.4.7 |
Ajout de CURLINFO_PRIMARY_IP ,
CURLINFO_PRIMARY_PORT ,
CURLINFO_LOCAL_IP et
CURLINFO_LOCAL_PORT .
|
5.3.7 |
Ajout de CURLINFO_REDIRECT_URL .
|
5.2.4 |
Ajout de CURLINFO_PRIVATE .
|
5.1.3 |
Ajout de CURLINFO_HEADER_OUT .
|
Exemple #1 Exemple avec curl_getinfo()
<?php
// Création d'un gestionnaire curl
$ch = curl_init('http://www.yahoo.com/');
// Exécution
curl_exec($ch);
// Vérification si une erreur est survenue
if(!curl_errno($ch))
{
$info = curl_getinfo($ch);
echo 'La requête a mis ' . $info['total_time'] . ' secondes à être envoyée à ' . $info['url'];
}
// Fermeture du gestionnaire
curl_close($ch);
?>
Note:
Les informations founies par cette fonction sont conservées si la connexion est réutilisée. La donnée précédemment utilisée est donc retournée à moins que celle-ci ne soit écrasée en interne entre temps.