Noticias Weblogs Foros Wiki Código
Sponsors:

Meta-Info

¿Que es?

Planeta Código es un agregador de weblogs sobre programación y desarrollo en castellano. Si eres lector te permite seguirlos de modo cómodo en esta misma página o mediante el fichero de subscripción.

rss subscripción

Sponsors

PlanetaCódigo en inglés

Puedes utilizar las siguientes imagenes para enlazar PlanetaCodigo:
planetacodigo

planetacodigo

Si tienes un weblog de programación y quieres ser añadido aquí, envíame un email solicitándolo.

Idea: Juanjo Navarro

Diseño: Albin

PHPBSD.net

Transfiriendo datos con la librería cURL en PHP

Enero 31st, 2007 - [Enlace local]

cURL es una utilidad de linea de comandos (curl) y una librería (libcurl) para realizar transferencias de archivos que soporta multitud de protocolos distintos (FTP, HTTP, etc.) y un sinfín de opciones. Tanto la utilidad como la librería son muy conocidas y de un uso muy extendido.

La librería se puede usar desde varios lenguajes de programación y entre ellos, como no, el PHP. Puedes encontrar en el manual todo un capítulo dedicado al conjunto de funciones cURL. De entre la infinidad de cosas que puedes hacer usando esta librería con PHP: obtener el contenido de una web, obtener datos XML (como RSS), subir o bajar archivos de servidores FTP, soporte para conexiones seguras (HTTPS, SCP), etc. Una opción destacable es el soporte de peticiones HTTP POST y GET con lo que podéis realizar scraping de casi cualquier cosa.

Un ejemplo de código para obtener el contenido de una página web (o un feed):

  1. $ch = curl_init();
  2. curl_setopt($ch, CURLOPT_URL, 'http://www.phpbsd.net/');
  3. curl_setopt($ch, CURLOPT_HEADER, false);
  4. curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true);
  5. $resultado = curl_exec($ch);
  6. $error = curl_error($ch);
  7. curl_close($ch);

Con el código anterior en $resultado nos quedamos con los datos obtenidos o nada si ha ocurrido un error, si ese es el caso en $error tenemos un mensaje de texto con el error. Se usan las siguientes opciones:

Para más opciones consultar la documentación de la función curl_setopt().

De todas las funcionalidades que proporciona el soporte de cURL en PHP una de las más llamativas son todas las funciones multi_* para realizar peticiones en paralelo, esto puede llegar a ser muy útil en numerosas situaciones. En un siguiente post explicaré como lanzar peticiones paralelas desde PHP usando cURL.

Etiquetas en Technorati: , , , , , ,
, , , , , ,

» Leer más, comentarios, etc...