Uniforme Client Resource Locator (cURL) est un outil de ligne de commande et de la bibliothèque (libcurl) pour transférer des fichiers sur un réseau. cURL supporte les protocoles Internet les plus populaires, y compris HyperText Transfer Protocol (HTTP et HTTPS), le protocole de transfert de fichiers (FTP), gopher, telnet et Lightweight Directory Access Protocol (LDAP). Vous pouvez utiliser libcurl dans vos scripts PHP pour récupérer des pages Web, de nouvelles RSS et d`autres fichiers sur Internet. Si vous ne devez enregistrer une copie locale du fichier récupéré, chercher directement dans la variable. Cette méthode est plus rapide, plus propre et plus efficace que la création d`un fichier local et l`ouvrir.
Initialiser une session cURL en appelant le "curl_init" fonction. Cette fonction retourne une poignée cURL vous pouvez utiliser avec d`autres fonctions cURL pour configurer et récupérer le fichier. Vous pouvez fournir l`URL (adresse de fichier) à "curl_init," par exemple:
$ Curlhandle = curl_init ( `http://whitehouse.gov/feed/blog`)
ALLERAlternativement, vous pouvez initialiser la session cURL sans passer des paramètres à "curl_init," et définir l`URL en utilisant le "curl_setopt" fonction. Cette méthode est utile si vous recyclez la poignée de cURL pour récupérer plusieurs fichiers.
$ Curlhandle = curl_init ()
ALLER
curl_setopt ($ curlhandle, CURLOPT_URL, `http://whitehouse.gov/feed/blog`);Réglez la session cURL pour renvoyer le contenu récupéré lorsque "curl_exec" de sorte que vous pouvez affecter le contenu du fichier récupéré à une variable. Met le "CURLOPT_RETURNTRANSFER" option "vrai" en utilisant le "culr_setopt" fonction:
curl_setopt ($ curlhandle, CURLOPT_RETURNTRANSFER, true)
ALLERSi "CURLOPT_RETURNTRANSFER" est réglé sur "faux," la "curl_exec" retourne un booléen "vrai" ou "faux" pour indiquer si oui ou non le fichier a été adjugée avec succès, et imprimer le fichier. Si vous voulez traiter le contenu du fichier (par exemple, tirer les manchettes d`un flux de nouvelles), vous devez capturer le contenu du fichier à une variable.
Appeler le "curl_exec" fonctionner pour aller chercher le fichier. Passer "curl_exec" la variable cURL. Attribuer les résultats de la récupération à une variable. Si la récupération a réussi, la variable contient le contenu du fichier. Si le fetch a échoué, la variable contient la valeur "faux."
$ contents = curl_exec ($ curlhandle);
Fermez la session dès que vous avez fini avec elle. Si vous utilisez la même session pour récupérer et traiter plusieurs fichiers, la laisser ouverte jusqu`à ce que vous avez terminé. Si vous avez seulement besoin d`aller chercher un seul fichier, fermer la session dès que vous obtenez le fichier.
curl_close ($ curlhandle);
Ecrire le code pour utiliser le contenu du fichier. Peu importe la façon dont vous utilisez le contenu du fichier, si vous imprimez, la sauvegarde, le formatage, l`analyse ou l`envoyer, vérifier que l`extraction a réussi d`abord. Utilisez un si-bloc pour vérifier le contenu de votre variable. Si la variable contient "faux," le transfert a échoué.
9-
if ($ contents == false) {
écho "Fetch échoué"
ALLER
}
autre {
echo $ contents
ALLER
}
Conseils & Avertissements
- Définissez l`option de temporisation cURL pour garder cURL d`attendre trop longtemps pour le fichier. La valeur numérique (le troisième paramètre à "curl_setopt") Fixé pour la "CURLOPT_TIMEOUT" options est le nombre de secondes d`attente. La définition de cette valeur "0" désactive le délai d`attente, ce qui cURL à attendre indéfiniment pour le fichier:
- curl_setopt ($ curlhandle, CURLOPT_TIMEOUT, 3);