cURL est une bibliothèque qui vous permet de faire des requêtes HTTP en PHP. Tout ce que vous devez savoir à ce sujet (et la plupart des autres extensions) peut être trouvé dans le manuel PHP .
Pour utiliser les fonctions cURL de PHP, vous devez installer le package »libcurl. PHP nécessite que vous utilisiez libcurl 7.0.2-beta ou supérieur. En PHP 4.2.3, vous aurez besoin de libcurl version 7.9.0 ou supérieure. Depuis PHP 4.3.0, vous aurez besoin d'une version de libcurl 7.9.8 ou supérieure. PHP 5.0.0 nécessite une version de libcurl 7.10.5 ou supérieure.
Vous pouvez également effectuer des requêtes HTTP sans cURL, bien qu'il doive allow_url_fopenêtre activé dans votre php.inifichier.
// Make a HTTP GET request and print it (requires allow_url_fopen to be enabled)print file_get_contents('http://www.example.com/');
@Johannes, Les demandes de publication HTTP sont-elles possibles sans cURL?
Pacerier
2
cela signifie que si dans le serveur 'allow_url_fopen' n'est pas activé, nous ne pourrions pas utiliser la fonction file_get_contents (), mais dans ce cas, nous pouvons utiliser la fonction curl dans le même but? Ai-je raison?
ARUN
3
@Arun Oui si 'allow_url_fopen' n'est pas activé, vous pouvez utiliser curl pour la même tâche au lieu de file_get_contents () func. Curl vous permet de définir plus d'options comme les données POST, les cookies, etc. que file_get_contents () ne fournit pas.
Dinesh Nagar
157
cURL est un moyen de frapper une URL de votre code pour en obtenir une réponse html. cURL signifie URL client qui vous permet de vous connecter avec d'autres URL et d'utiliser leurs réponses dans votre code.
en Javascript, c'est la même chose que vous ajax dans votre code. Les différentes choses avec PHP que vous faites de manière synchrone tandis qu'en Javascript vous faites de manière aysnchrone.
Faris Rayhan
68
CURL en PHP:
Résumé:
La curl_execcommande en PHP est un pont à utiliser curldepuis la console. curl_exec permet de faire facilement et rapidement des requêtes GET / POST, de recevoir des réponses d'autres serveurs comme JSON et de télécharger des fichiers.
Avertissement, danger:
curlest mauvais et dangereux s'il est utilisé de manière incorrecte, car il s'agit de récupérer des données sur Internet. Quelqu'un peut se mettre entre votre boucle et l'autre serveur et injecter un rm -rf /dans votre réponse, puis pourquoi suis-je tombé sur une console et ls -lne fonctionne même plus? Parce que vous avez sous-estimé la puissance dangereuse de la boucle. Ne faites pas confiance à tout ce qui revient de curl pour être sûr, même si vous parlez à vos propres serveurs. Vous pourriez retirer des logiciels malveillants pour soulager les imbéciles de leur richesse.
Faites attention à la sortie de la boucle, si une partie de celle-ci est interprétée et exécutée, votre boîte appartient et vos informations de carte de crédit seront vendues à des tiers et vous obtiendrez une charge mystérieuse de 900 $ d'une entreprise de revêtement de sol individuelle de l'Alabama qui est un avant pour l'anneau de crime de fraude de carte de crédit à l'étranger.
Pouvez-vous fournir un lien pour sauvegarder le «danger» que vous mentionnez ici?
floatingLomas
1
@floatingLomas Ce qu'Eric essaie d'expliquer est un problème qui est présent avec tout le contenu fourni par l'utilisateur: vous ne pouvez faire confiance à personne. Comme pour le contenu fourni par l'utilisateur, il est possible d'exploiter cURL à l'aide d'un simple MITM pour injecter du code malveillant dans votre application. Bien sûr, ce n'est un problème que s'il est "interprété et exécuté" comme Eric l'a déclaré correctement. Il suffit de rechercher l' eval est mauvais et vous trouverez de nombreux risques de sécurité possibles (par exemple stackoverflow.com/questions/951373/when-is-eval-evil-in-php )
Fabio Poloni
7
@floatingLomas ... aussi, Eric semble avoir une paranoïa au sujet des entreprises de revêtement de sol individuelles de l'Alabama qui lui font payer 900 $.
Fabio Poloni
Existe-t-il une alternative en plus de l'iframe?
Jennifer Michelle
1
Ce n'est pas de la paranoïa s'ils veulent vraiment vous vendre des revêtements de sol.
piersb
24
cURL est un moyen de frapper une URL de votre code pour en obtenir une réponse HTML. Il est utilisé pour la ligne de commande cURL du langage PHP.
Étape 1: initialisez une session curl à l'aide de curl_init().
Étape 2: Définissez l'option pour CURLOPT_URL. Cette valeur est l'URL à laquelle nous envoyons la demande. Ajoutez un terme de recherche en curlutilisant le paramètre q=. Définissez l'option pour CURLOPT_RETURNTRANSFER. True indique à curl de renvoyer la chaîne au lieu de l'imprimer. Définissez l'option pour CURLOPT_HEADER, false indique à curl d'ignorer l'en-tête dans la valeur de retour.
Étape 3: Exécutez la session curl à l'aide de curl_exec().
Étape 4: fermez la session curl que nous avons créée.
Commençons par comprendre les concepts de curl, libcurl et PHP / cURL.
curl : Un outil en ligne de commande pour obtenir ou envoyer des fichiers à l'aide de la syntaxe URL.
libcurl : une bibliothèque créée par Daniel Stenberg, qui vous permet de vous connecter et de communiquer avec de nombreux types de serveurs différents avec de nombreux types de protocoles différents. libcurl prend actuellement en charge les protocoles http, https, ftp, gopher, telnet, dict, file et ldap. libcurl prend également en charge les certificats HTTPS, HTTP POST, HTTP PUT, le téléchargement FTP (cela peut également être fait avec l'extension ftp de PHP), le téléchargement basé sur le formulaire HTTP, les procurations, les cookies et l'authentification utilisateur + mot de passe.
PHP / cURL : Le module pour PHP qui permet aux programmes PHP d'utiliser libcurl.
Comment l'utiliser:
étape 1 : initialiser une session curl, utilisez curl_init ().
étape 2 : définir l'option pour CURLOPT_URL. Cette valeur est l'URL à laquelle nous envoyons la demande. Ajoutez un terme de recherche "curl" en utilisant le paramètre "q =". Définissez l'option CURLOPT_RETURNTRANSFER, true indiquera à curl de renvoyer la chaîne au lieu de l'imprimer. Définissez l'option pour CURLOPT_HEADER, false indiquera à curl d'ignorer l'en-tête dans la valeur de retour.
étape 3 : Exécutez la session curl en utilisant curl_exec ().
étape 4 : Fermez la session curl que nous avons créée.
step5 : sortie de la chaîne de retour.
Faire DEMO :
Vous devrez créer deux fichiers PHP et les placer dans un dossier à partir duquel votre serveur Web peut servir des fichiers PHP. Dans mon cas, je les ai mis dans / var / www / pour plus de simplicité.
1. helloservice.php et 2. demo.php
helloservice.php est très simple et fait simplement écho à toutes les données qu'il obtient:
<?php
// Here is the data we will be sending to the service
$some_data = array('message'=>'Hello World','name'=>'Anand');
$curl = curl_init();// You can also set the URL you want to communicate with by doing this:// $curl = curl_init('http://localhost/echoservice');// We POST the data
curl_setopt($curl, CURLOPT_POST,1);// Set the url path we want to call
curl_setopt($curl, CURLOPT_URL,'http://localhost/demo.php');// Make it so the data coming back is put into a string
curl_setopt($curl, CURLOPT_RETURNTRANSFER,true);// Insert the data
curl_setopt($curl, CURLOPT_POSTFIELDS, $some_data);// You can also bunch the above commands into an array if you choose using: curl_setopt_array// Send the request
$result = curl_exec($curl);// Get some cURL session information back
$info = curl_getinfo($curl);
echo 'content type: '. $info['content_type'].'<br />';
echo 'http code: '. $info['http_code'].'<br />';// Free up the resources $curl is using
curl_close($curl);
echo $result;?>
cURL est un moyen de frapper une URL de votre code pour en obtenir une réponse HTML.
Il est utilisé pour la ligne de commande cURL du langage PHP.
cURL est une bibliothèque qui vous permet de faire des requêtes HTTP en PHP.
PHP prend en charge libcurl, une bibliothèque créée par Daniel Stenberg, qui vous permet de vous connecter et de communiquer avec de nombreux types de serveurs différents avec de nombreux types de protocoles différents. libcurl prend actuellement en charge les protocoles http, https, ftp, gopher, telnet, dict, file et ldap. libcurl prend également en charge les certificats HTTPS, HTTP POST, HTTP PUT, le téléchargement FTP (cela peut également être fait avec l'extension ftp de PHP), le téléchargement basé sur le formulaire HTTP, les procurations, les cookies et l'authentification utilisateur + mot de passe.
Une fois que vous avez compilé PHP avec le support cURL, vous pouvez commencer à utiliser les fonctions cURL. L'idée de base derrière les fonctions cURL est que vous initialisez une session cURL à l'aide de curl_init (), puis vous pouvez définir toutes vos options pour le transfert via curl_setopt (), puis vous pouvez exécuter la session avec curl_exec () puis vous terminer votre session en utilisant curl_close ().
Curl n'est rien d'autre qu'une extension de PHP qui hérite des comportements de la commande et de la bibliothèque curl normales écrites principalement pour l'outil de ligne de commande Linux / Unix
Qu'est-ce que Curl?
cURL signifie URL client. Le cURL est utilisé pour envoyer des données à n'importe quelle URL. Pour plus de détails sur ce qu'est exactement la boucle, vous pouvez visiter le site Web de CURL
cURL en PHP Maintenant, le même concept est introduit en PHP, pour envoyer des données à n'importe quelle URL accessible via les différents protocoles, par exemple HTTP ou FTP. Pour plus de détails, vous pouvez vous référer au Tutoriel PHP Curl
Réponses:
cURL est une bibliothèque qui vous permet de faire des requêtes HTTP en PHP. Tout ce que vous devez savoir à ce sujet (et la plupart des autres extensions) peut être trouvé dans le manuel PHP .
Vous pouvez également effectuer des requêtes HTTP sans cURL, bien qu'il doive
allow_url_fopen
être activé dans votrephp.ini
fichier.la source
cURL est un moyen de frapper une URL de votre code pour en obtenir une réponse html. cURL signifie URL client qui vous permet de vous connecter avec d'autres URL et d'utiliser leurs réponses dans votre code.
la source
CURL en PHP:
Résumé:
La
curl_exec
commande en PHP est un pont à utilisercurl
depuis la console. curl_exec permet de faire facilement et rapidement des requêtes GET / POST, de recevoir des réponses d'autres serveurs comme JSON et de télécharger des fichiers.Avertissement, danger:
curl
est mauvais et dangereux s'il est utilisé de manière incorrecte, car il s'agit de récupérer des données sur Internet. Quelqu'un peut se mettre entre votre boucle et l'autre serveur et injecter unrm -rf /
dans votre réponse, puis pourquoi suis-je tombé sur une console etls -l
ne fonctionne même plus? Parce que vous avez sous-estimé la puissance dangereuse de la boucle. Ne faites pas confiance à tout ce qui revient de curl pour être sûr, même si vous parlez à vos propres serveurs. Vous pourriez retirer des logiciels malveillants pour soulager les imbéciles de leur richesse.Exemples:
Cela a été fait sur Ubuntu 12.10
Curl de base à partir de la ligne de commande:
Ensuite, vous pouvez ouvrir votre gif dans Firefox:
Chats glorieux évoluant Toxoplasma gondii pour amener les femmes à garder les chats autour et les hommes aussi à garder les femmes autour.
exemple cURL get request to hit google.com, echo to the commandline:
Cela se fait via le terminal phpsh:
Qui imprime et décharge un désordre de html condensé et javascript (de google) sur la console.
Exemple cURL mettre le texte de réponse dans une variable:
Cela se fait via le terminal phpsh:
La variable contient maintenant le binaire qui est un gif animé d'un chat, les possibilités sont infinies.
Faites une boucle à partir d'un fichier PHP:
Mettez ce code dans un fichier appelé myphp.php:
Ensuite, exécutez-le via la ligne de commande:
Vous avez exécuté myphp.php et exécuté ces commandes via l'interpréteur php et vidé une tonne de code HTML et javascript désordonné à filtrer.
Vous pouvez faire
GET
etPOST
demander avec curl, tout ce que vous faites est de spécifier les paramètres définis ici: Utilisation de curl pour automatiser les travaux HTTPRappel de danger:
Faites attention à la sortie de la boucle, si une partie de celle-ci est interprétée et exécutée, votre boîte appartient et vos informations de carte de crédit seront vendues à des tiers et vous obtiendrez une charge mystérieuse de 900 $ d'une entreprise de revêtement de sol individuelle de l'Alabama qui est un avant pour l'anneau de crime de fraude de carte de crédit à l'étranger.
la source
cURL est un moyen de frapper une URL de votre code pour en obtenir une réponse HTML. Il est utilisé pour la ligne de commande cURL du langage PHP.
Étape 1: initialisez une session curl à l'aide de
curl_init()
.Étape 2: Définissez l'option pour
CURLOPT_URL
. Cette valeur est l'URL à laquelle nous envoyons la demande. Ajoutez un terme de recherche encurl
utilisant le paramètreq=
. Définissez l'option pourCURLOPT_RETURNTRANSFER
. True indique à curl de renvoyer la chaîne au lieu de l'imprimer. Définissez l'option pourCURLOPT_HEADER
, false indique à curl d'ignorer l'en-tête dans la valeur de retour.Étape 3: Exécutez la session curl à l'aide de
curl_exec()
.Étape 4: fermez la session curl que nous avons créée.
Étape 5: sortie de la chaîne de retour.
Ceci est également utilisé pour l'authentification. Nous pouvons également définir le nom d'utilisateur et le mot de passe pour l'authentification.
Pour plus de fonctionnalités, consultez le manuel d'utilisation ou le tutoriel suivant:
http://php.net/manual/en/ref.curl.php
http://www.startutorial.com/articles/view/php-curl
la source
Commençons par comprendre les concepts de curl, libcurl et PHP / cURL.
curl : Un outil en ligne de commande pour obtenir ou envoyer des fichiers à l'aide de la syntaxe URL.
libcurl : une bibliothèque créée par Daniel Stenberg, qui vous permet de vous connecter et de communiquer avec de nombreux types de serveurs différents avec de nombreux types de protocoles différents. libcurl prend actuellement en charge les protocoles http, https, ftp, gopher, telnet, dict, file et ldap. libcurl prend également en charge les certificats HTTPS, HTTP POST, HTTP PUT, le téléchargement FTP (cela peut également être fait avec l'extension ftp de PHP), le téléchargement basé sur le formulaire HTTP, les procurations, les cookies et l'authentification utilisateur + mot de passe.
PHP / cURL : Le module pour PHP qui permet aux programmes PHP d'utiliser libcurl.
Comment l'utiliser:
étape 1 : initialiser une session curl, utilisez curl_init ().
étape 2 : définir l'option pour CURLOPT_URL. Cette valeur est l'URL à laquelle nous envoyons la demande. Ajoutez un terme de recherche "curl" en utilisant le paramètre "q =". Définissez l'option CURLOPT_RETURNTRANSFER, true indiquera à curl de renvoyer la chaîne au lieu de l'imprimer. Définissez l'option pour CURLOPT_HEADER, false indiquera à curl d'ignorer l'en-tête dans la valeur de retour.
étape 3 : Exécutez la session curl en utilisant curl_exec ().
étape 4 : Fermez la session curl que nous avons créée.
step5 : sortie de la chaîne de retour.
Faire DEMO :
Vous devrez créer deux fichiers PHP et les placer dans un dossier à partir duquel votre serveur Web peut servir des fichiers PHP. Dans mon cas, je les ai mis dans / var / www / pour plus de simplicité.
1. helloservice.php et 2. demo.php
helloservice.php est très simple et fait simplement écho à toutes les données qu'il obtient:
Page 2.demo.php , vous pouvez voir le résultat:
la source
L'extension cURL de PHP est conçue pour vous permettre d'utiliser une variété de ressources Web à partir de votre script PHP.
la source
cURL en PHP est un pont pour utiliser la ligne de commande cURL du langage php
la source
boucle
PHP prend en charge libcurl, une bibliothèque créée par Daniel Stenberg, qui vous permet de vous connecter et de communiquer avec de nombreux types de serveurs différents avec de nombreux types de protocoles différents. libcurl prend actuellement en charge les protocoles http, https, ftp, gopher, telnet, dict, file et ldap. libcurl prend également en charge les certificats HTTPS, HTTP POST, HTTP PUT, le téléchargement FTP (cela peut également être fait avec l'extension ftp de PHP), le téléchargement basé sur le formulaire HTTP, les procurations, les cookies et l'authentification utilisateur + mot de passe.
Une fois que vous avez compilé PHP avec le support cURL, vous pouvez commencer à utiliser les fonctions cURL. L'idée de base derrière les fonctions cURL est que vous initialisez une session cURL à l'aide de curl_init (), puis vous pouvez définir toutes vos options pour le transfert via curl_setopt (), puis vous pouvez exécuter la session avec curl_exec () puis vous terminer votre session en utilisant curl_close ().
Exemple de code
Pour plus d'informations, veuillez vérifier -
la source
Curl n'est rien d'autre qu'une extension de PHP qui hérite des comportements de la commande et de la bibliothèque curl normales écrites principalement pour l'outil de ligne de commande Linux / Unix
Qu'est-ce que Curl? cURL signifie URL client. Le cURL est utilisé pour envoyer des données à n'importe quelle URL. Pour plus de détails sur ce qu'est exactement la boucle, vous pouvez visiter le site Web de CURL
cURL en PHP Maintenant, le même concept est introduit en PHP, pour envoyer des données à n'importe quelle URL accessible via les différents protocoles, par exemple HTTP ou FTP. Pour plus de détails, vous pouvez vous référer au Tutoriel PHP Curl
la source
Fonction PHP Curl (POST, GET, DELETE, PUT)
la source
Classe PHP Curl (GET, POST, FILES UPLOAD, SESSIONS, SEND POST JSON, FORCE SELFSIGNED SSL / TLS):
Exemple:
Fichier php: api.php
la source