cURL (abréviation de Client URL Request Library) est une interface en ligne de commande destinée à récupérer le contenu d'une ressource accessible par un réseau informatique.
PHP supporte libcurl, qui vous permet de vous connecter et de communiquer avec différents types de serveurs, et ce, avec différents types de protocoles.
Voici quelques exemples :
Comment récupérer une page web
Comment récupérer des fichiers


Comment récupérer une page web :
Ce script va récupérer le contenu de example.com et va l'enregistrer dans un fichier texte example.txt

$ch = curl_init("http://www.example.com/");
$fp = fopen("example.txt", "w");

curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);

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



Récupérer une page web dans une variable :
$ch = curl_init($link);

if (!$ch) {
echo "Echec de l'ouverture du fichier";
exit;
} else {
echo "ouverture du fichier LINK";

curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_GET, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$buffer = curl_exec($ch);
curl_close($ch);
echo $buffer;
}

$buffer contient désormais le contenu de la page web. Vous pouvez maintenant travailler cette variable avec des expressions régulières ou autre...



Comment télécharger des fichiers :
Ce script va télécharger le fichier qui se trouve à l'adresse $url et l'enregistrer dans $path

$path = "images/mon-fichier.jpg";
$url="http://www.example.com/files/image/articles/une-image.jpg";

$fp = fopen($path, 'w');

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_FILE, $fp);
$data = curl_exec($ch);
$curl_errno = curl_errno($ch);
$curl_error = curl_error($ch);
curl_close($ch);
fclose($fp);

if ($curl_errno > 0) {
echo "cURL Error ($curl_errno): $curl_error\n";
} else {
echo "Data received: $data\n";
}


cURL est une librairie très puissante et qui vous permet de faire une multitude de chose.
Site officiel : http://curl.haxx.se/
Doc complète : http://www.php.net/manual/fr/book.curl.php

Publié dans : Tuto Tags : curl  
 
© Copyright 2000-10 | Création de sites Internet - Broadband & multimedia | Webmaster: www.combe.ch