A biblioteca libcurl criada por Daniel Stenberg, desenvolvida em PHP, permite conectar e comunicar-se com uma variedade de servidores usando vários tipos de protocolos.
libcurl atualmente suporta protocolos http, https, ftp, gopher, telnet, dict, file e ldap. libcurl também suporta autenticação HTTPS, HTTP POST, HTTP PUT, upload FTP (isso também pode ser feito através da extensão FTP do PHP), upload baseado em formulário HTTP, proxy, cookies e autenticação de nome de usuário + senha.
Como usar cURL para implementar solicitações Get e Post em PHP
Essas funções foram introduzidas no PHP 4.0.2.
Para usar as funções cURL do PHP, você precisa instalar o pacote libcurl.
PHP requer libcurl 7.0.2-beta ou superior. Para usar cURL com PHP 4.2.3, você precisa instalar o libcurl versão 7.9.0 ou superior. A partir do PHP 4.3.0 você precisa instalar o libcurl versão 7.9.0 ou superior. A partir do PHP 5.0.0 você precisa instalar a versão 7.10.5 ou superior do libcurl.
Para usar o suporte cURL do PHP você deve adicionar a opção --with-curl[=DIR] ao compilar o PHP. DIR é o caminho do diretório que contém lib e include. Deve haver uma pasta chamada curl que contenha easy.h e curl.h no diretório include. Deve haver um arquivo chamado libcurl.a na pasta lib. Para PHP 4.3.0 você pode configurar --with-curlwrappers para fazer cURL usar fluxos de URL.
Nota: Os usuários do Win32 devem observar que, ao usar este módulo em um ambiente Windows, libeay32.dll e ssleay32.dll devem ser colocados no diretório incluído na variável de ambiente PATH. Não use libcurl.dll do site cURL.
Esta extensão define 2 recursos: identificadores cURL e identificadores de lote cURL.
O seguinte contém uma lista de funções cURL do PHP:
função | descrever |
---|---|
curl_close() | Feche uma sessão cURL. |
curl_copy_handle() | Copia um identificador cURL e todas as suas opções. |
curl_errno() | Retorna o último número do erro. |
curl_error() | Retorna uma string protegendo o erro mais recente da sessão atual. |
curl_escape() | Retorna a string de escape codificada em URL para a string fornecida. |
curl_exec() | Execute uma sessão cURL. |
curl_file_create() | Crie um objeto CURLFile. |
curl_getinfo() | Obtenha informações sobre um identificador de recurso de conexão cURL. |
curl_init() | Inicialize uma sessão cURL. |
curl_multi_add_handle() | Adicione um identificador curl separado à sessão em lote curl. |
curl_multi_close() | Feche um conjunto de identificadores cURL. |
curl_multi_exec() | Executa uma subconexão do identificador cURL atual. |
curl_multi_getcontent() | Se CURLOPT_RETURNTRANSFER estiver definido, retorna o fluxo de texto da saída buscada. |
curl_multi_info_read() | Obtenha as informações de transporte relevantes do cURL atualmente analisado. |
curl_multi_init() | Retorna um novo identificador de lote cURL. |
curl_multi_remove_handle() | Remova um recurso de identificador do recurso de identificador de lote curl. |
curl_multi_select() | Aguarde conexões ativas em todos os lotes cURL. |
curl_multi_setopt() | Defina uma opção de transferência cURL em lote. |
curl_multi_strerror() | Retorna uma string de texto que descreve o código de erro. |
curl_pause() | Pause e retome conexões. |
curl_reset() | Redefine todas as opções do identificador de sessão da libcurl. |
curl_setopt_array() | Defina opções para sessões de transferência cURL em massa. |
curl_setopt() | Defina uma opção de transporte cURL. |
curl_share_close() | Feche o identificador compartilhado cURL. |
curl_share_init() | Inicialize o identificador compartilhado cURL. |
curl_share_setopt() | Defina opções de transporte cURL para um identificador compartilhado. |
curl_strerror() | Retorna uma descrição de string do código de erro. |
curl_unescape() | Decodifique a string codificada em URL. |
curl_versão() | Obtenha informações sobre a versão do cURL. |