Forum und email

CURL, Biblioteca de Cliente de URL

Introdução

O PHP suporta a libcurl, uma biblioteca criada por Daniel Stenberg, que permite a você conectar e comunicar com vários tipos diferentes de servidor com vários tipos diferentes de protocolos. libcurl atualmente suporta os protocolos http, https, ftp, gopher, telnet, dict, file, e ldap. libcurl também suporta certificados HTTPS, HTTP POST, HTTP PUT, upload com FTP (isto também pode ser feito com a extensão de ftp do PHP), upload baseado em formulário HTTP, proxies, cookies, e autenticação usuário+senha.

Estas funções foram adicionadas no PHP 4.0.2.

Dependências

Para poder usar as funções CURL você precisa instalar o pacote » CURL. PHP requer que você use o CURL 7.0.2-beta ou posterior. PHP não irá funcionar com qualquer versão anterior a CURL 7.0.2-beta. No PHP 4.2.3, você precisa do CURL versão 7.9.0 ou posterior. A partir do PHP 4.3.0, você precisa da CURL versão que seja 7.9.8 ou posterior. PHP 5.0.0 requer a libcurl 7.10.5 ou superior.

Instalação

Para usar o suporte a cURL no PHP, você deverá compilar o PHP com --with-curl[=DIR] aonde DIR é a localização do diretório contendo os diretórios lib e include. No diretório "include" deve ter uma pasta chamada "curl" a qual deve conter os arquivos easy.h e curl.h. Deve haver um arquivo chamado libcurl.a localizado no diretório "lib". Começando no PHP 4.3.0 você pode configurar o PHP para usar o cURL para streams URL --with-curlwrappers.

Nota: Nota para usuários de Win32 Para ativar este módulo em um ambiente Windows, você deve copiar libeay32.dll e ssleay32.dll precisa estar presente em seu PATH. Você não precisa da libcurl.dll do site do cURL.

Tipos Resource

Esta extensão define 2 tipos resource: um manipulador cURL handle e o multi-manipulador cURL.

Constantes pré-definidas

Veja também as Constantes Pré-definidas cURL

Exemplos

Após você ter compilado o PHP com suporte a cURL, você pode começar a usar as funções cURL. A idéia basica por trás das funções cURL é que você começa uma sessão cURL usando curl_init(), então você define todas as suas opções para a transferencia com curl_setopt(), então você executa a sessão com curl_exec() e você termona a sua sessão usando a função curl_close(). Aqui está um exemplo que usa as funções cURL para obter a homepage example.com em um arquivo:

Example#1 Usando o módulo cURL para obter a homepage example.com

<?php

$ch 
curl_init("https://www.example.com/");
$fp fopen("example_homepage.txt""w");

curl_setopt($chCURLOPT_FILE$fp);
curl_setopt($chCURLOPT_HEADER0);

curl_exec($ch);
curl_close($ch);
fclose($fp);
?>

Índice