Funciones cURL de PHP


Descripción general

La biblioteca libcurl, creada por Daniel Stenberg y soportada por PHP, te permite conectar y comunicarte con varios tipos de servidores usando varios tipos de protocolos.

libcurl actualmente soporta los protocolos http, https, ftp, gopher, telnet, dict, file y ldap. libcurl también soporta autenticación HTTPS, HTTP POST, HTTP PUT, carga FTP (esto también se puede hacer mediante la extensión FTP de PHP), carga basada en formularios HTTP, proxies, cookies y autenticación de nombre de usuario + contraseña.

Métodos para implementar solicitudes GET y POST usando cURL en PHP

Estas funciones fueron introducidas en PHP 4.0.2.



Requisitos

Para usar las funciones cURL de PHP, necesitas instalarlibcurlel paquete.

PHP necesita libcurl 7.0.2-beta o superior. Para usar cURL en PHP 4.2.3, necesitas instalar libcurl 7.9.0 o superior. Desde PHP 4.3.0, necesitas instalar libcurl 7.9.0 o superior. Desde PHP 5.0.0, necesitas instalar libcurl 7.10.5 o superior.



Instalación

Para usar el soporte cURL de PHP, debes compilar PHP con la opción --with-curl[=DIR], donde DIR es la ruta del directorio que contiene lib e include. En el directorio include debe haber una carpeta llamada curl que contenga easy.h y curl.h. En la carpeta lib debería haber un archivo llamado libcurl.a. Para PHP 4.3.0, puedes configurar --with-curlwrappers para que cURL use flujos de URL.

Nota: Usuarios de Win32. Para usar este módulo en el entorno Windows, libeay32.dll y ssleay32.dll deben colocarse en un directorio incluido en la variable de entorno PATH. No uses libcurl.dll del sitio web de cURL.


Tipos de recursos

Esta extensión define 2 tipos de recursos: manejadores cURL y manejadores de lote cURL.



Funciones cURL de PHP

Lo siguiente contiene la lista de funciones cURL de PHP:

Función Descripción
curl_close() Cierra una sesión cURL.
curl_copy_handle() Copia un manejador cURL y todas sus opciones.
curl_errno() Devuelve el número del último error.
curl_error() Devuelve una cadena que contiene el último error de la sesión actual.
curl_escape() Devuelve una cadena escapada, codificando la URL de la cadena dada.
curl_exec() Ejecuta una sesión cURL.
curl_file_create() Crea un objeto CURLFile.
curl_getinfo() Obtiene información de un manejador de recurso de conexión cURL.
curl_init() Inicializa una sesión cURL.
curl_multi_add_handle() Añade un manejador curl individual a una sesión de lote curl.
curl_multi_close() Cierra un conjunto de manejadores cURL.
curl_multi_exec() Ejecuta las subconexiones del manejador cURL actual.
curl_multi_getcontent() Si se establece CURLOPT_RETURNTRANSFER, devuelve el flujo de texto de la salida obtenida.
curl_multi_info_read() Obtiene información de transferencia relacionada con el cURL analizado actualmente.
curl_multi_init() Devuelve un nuevo manejador de lote cURL.
curl_multi_remove_handle() Elimina un recurso de manejador de un recurso de manejador de lote curl.
curl_multi_select() Espera todas las conexiones activas en el lote cURL.
curl_multi_setopt() Establece una opción de transferencia cURL de lote.
curl_multi_strerror() Devuelve el texto de cadena que describe el código de error.
curl_pause() Pausa y reanuda una conexión.
curl_reset() Restablece todas las opciones del manejador de sesión de libcurl.
curl_setopt_array() Establece opciones de forma masiva para una sesión de transferencia cURL.
curl_setopt() Establece una opción de transferencia cURL.
curl_share_close() Cierra un manejador compartido cURL.
curl_share_init() Inicializa un manejador compartido cURL.
curl_share_setopt() Establece una opción de transferencia cURL para un manejador compartido.
curl_strerror() Devuelve la descripción de cadena del código de error.
curl_unescape() Decodifica una cadena codificada en URL.
curl_version() Obtiene información de la versión de cURL.
Otras extensiones