(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)
curl_getinfo — Obtém informação sobre uma transferência específica
Obtém informação sobre a última transferência.
handle
Um manipulador cURL retornado por curl_init().
option
Uma das constantes CURLINFO_*.
Se o parâmetro option for fornecido, retorna seu valor.
Caso contrário, retorna um array associativo com os elementos a seguir
(que correspondem a option), ou false em caso de falha:
"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"
"certinfo"
"primary_ip"
"primary_port"
"local_ip"
"local_port"
"redirect_url"
"request_header" (Este somente será definido se a opção CURLINFO_HEADER_OUT
for configurada por uma chamada prévia a curl_setopt())
"posttransfer_time_us" (Disponível a partir do PHP 8.4.0 e cURL 8.10.0)
CURLINFO_PRIVATE.
| Versão | Descrição |
|---|---|
| 8.4.0 |
Introduzida a constante CURLINFO_POSTTRANSFER_TIME_T e a chave posttransfer_time_us (Curl 8.10.0 ou posterior).
|
| 8.3.0 |
Introduzidas as constantes CURLINFO_CAINFO
e CURLINFO_CAPATH.
|
| 8.2.0 |
Introduzidas as constantes CURLINFO_PROXY_ERROR,
CURLINFO_REFERER e
CURLINFO_RETRY_AFTER.
|
| 8.0.0 |
O parâmetro handle agora espera uma instância de CurlHandle;
anteriormente, um resource era esperado.
|
| 8.0.0 |
option agora pode ser nulo;
anteriormente, o padrão era 0.
|
| 7.3.0 |
Introduzidas as opções CURLINFO_CONTENT_LENGTH_DOWNLOAD_T,
CURLINFO_CONTENT_LENGTH_UPLOAD_T,
CURLINFO_HTTP_VERSION,
CURLINFO_PROTOCOL,
CURLINFO_PROXY_SSL_VERIFYRESULT,
CURLINFO_SCHEME,
CURLINFO_SIZE_DOWNLOAD_T,
CURLINFO_SIZE_UPLOAD_T,
CURLINFO_SPEED_DOWNLOAD_T,
CURLINFO_SPEED_UPLOAD_T,
CURLINFO_APPCONNECT_TIME_T,
CURLINFO_CONNECT_TIME_T,
CURLINFO_FILETIME_T,
CURLINFO_NAMELOOKUP_TIME_T,
CURLINFO_PRETRANSFER_TIME_T,
CURLINFO_REDIRECT_TIME_T,
CURLINFO_STARTTRANSFER_TIME_T e
CURLINFO_TOTAL_TIME_T.
|
Exemplo #1 Exemplo de curl_getinfo()
<?php
// Cria um manipulador cURL
$ch = curl_init('http://www.example.com/');
// Executa
curl_exec($ch);
// Verifica se algum erro ocorreu
if (!curl_errno($ch)) {
$info = curl_getinfo($ch);
echo 'Demorou ', $info['total_time'], ' segundos para enviar uma requisição a ', $info['url'], "\n";
}
?>
Exemplo #2 Exemplo de curl_getinfo() com parâmetro option
<?php
// Cria um identificador cURL
$ch = curl_init('http://www.example.com/');
// Executa
curl_exec($ch);
// Verifica o código de estado do HTTP
if (!curl_errno($ch)) {
switch ($http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE)) {
case 200: # OK
break;
default:
echo 'Código HTTP inesperado: ', $http_code, "\n";
}
}
?>Nota:
Informações obtidas por esta função são mantidas se o identificador for reutilizado. Isto significa que a menos que uma estatística seja substituída internamente por esta função, a informação anterior é retornada.