curl_exec
curl_init
Fonctions cURL
PHP Manual

# curl_getinfo

(PHP 4 >= 4.0.4, PHP 5)

curl_getinfo — Lit les informations détaillant un transfert cURL

### Description

mixed curl_getinfo ( resource `$ch` [, int `$opt` = 0 ] )

curl_getinfo() lit les informations concernant le transfert `ch`.

### Liste de paramètres

`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_TIME` : durée en secondes de toutes les étapes de redirection avant que la transaction finale ne soit débutée
  - `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. Disponible depuis PHP 5.1.3
  - `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 fichier téléchargé. `NULL` indique que le serveur n'a pas envoyé d'en-tête Content-Type:

### Valeurs de retour

Si `opt` est fourni, la valeur retournée sera une chaîne. Sinon, ce sera un tableau associatif contenant les éléments suivants : (qui correspond à `opt`):

- "url"
- "content_type"
- "http_code"
- "header_size"
- "request_size"
- "filetime"
- "ssl_verify_result"
- "redirect_count"
- "total_time"
- "namelookup_time"
- "connect_time"
- "pretransfer_time"
- "size_upload"
- "size_download"
- "speed_download"
- "speed_upload"
- "download_content_length"
- "upload_content_length"
- "starttransfer_time"
- "redirect_time"

### Historique

Version | Description
--- | ---
5.1.3 | Ajout de `CURLINFO_HEADER_OUT`.

### Exemples

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

curl_exec
curl_init
Fonctions cURL
PHP Manual