247 votes

Ce qui est cURL en PHP ?

En PHP, je vois le mot cURL dans de nombreux projets PHP. Qu'est-ce que c'est ? Comment ça marche ?

Lien de référence : (ce qui est cURL en PHP ?)

267voto

Johannes Gorset Points 4378

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.

Afin de PHP cURL fonctions vous devez installer le » libcurl package. PHP nécessite que vous utilisez libcurl 7.0.2-bêta ou plus. En PHP 4.2.3, vous aurez besoin de libcurl version 7.9.0 ou plus. Depuis PHP 4.3.0, vous aurez besoin d'un libcurl version 7.9.8 ou plus. PHP 5.0.0 nécessite un libcurl version 7.10.5 ou plus.

Vous pouvez effectuer des requêtes HTTP sans cURL, aussi, si elle exige allow_url_fopen être activé dans votre php.ini le fichier.

// Make a HTTP GET request and print it (requires allow_url_fopen to be enabled)
print file_get_contents('http://www.example.com/');

160voto

sushil bharwani Points 10138

cURL est un moyen vous pouvez taper une URL à partir de votre code pour obtenir une réponse de html de celle-ci. cURL signifie URL client qui vous permet de vous connecter avec les autres URL et utiliser leurs réponses dans votre code.

78voto

Eric Leschinski Points 14289

CURL en PHP:

Résumé:

L' curl_exec commande en PHP est un pont à utiliser curl à partir de la console. curl_exec le rend facile à rapidement et facilement le faire GET/POST demandes, recevoir des réponses à partir d'autres serveurs comme JSON et de téléchargement de fichiers.

Attention, Danger:

curl qui est mal et dangereux si mal utilisé, car il est tout au sujet d'obtenir des données à partir là-bas dans l'internet. Quelqu'un peut obtenir entre votre roulage et de l'autre serveur et de les injecter un rm -rf / dans votre réponse, et puis pourquoi suis-je tombé dans une console et ls -l n'a même pas de travailler plus? Parce que vous vous êtes trompé sous-estimé le pouvoir dangereux de curl. Ne faites pas confiance à tout ce qui vient de revenir de curl pour être sûr, même si vous parlez à vos propres serveurs. Vous pourriez être en tirant en arrière malware pour soulager les imbéciles de leur richesse.

Exemples:

Ceci a été fait sur Ubuntu 12.10

  1. De base curl à partir de la ligne de commande:

    el@apollo:/home/el$ curl http://i.imgur.com/4rBHtSm.gif > mycat.gif
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
    100  492k  100  492k    0     0  1077k      0 --:--:-- --:--:-- --:--:-- 1240k
    

    Ensuite, vous pouvez ouvrir votre gif dans firefox:

    firefox mycat.gif
    

    Glorieux chats évolution de Toxoplasma gondii pour amener les femmes à avoir des chats autour et les hommes de même à garder les femmes autour.

  2. cURL exemple obtenir la demande de frapper google.com écho à la ligne de commande:

    Cela se fait par le phpsh terminal:

    php> $ch = curl_init();
    
    php> curl_setopt($ch, CURLOPT_URL, 'http://www.google.com');
    
    php> curl_exec($ch);
    

    Qui imprime et les décharges d'un désordre de résumés de html et de javascript (de google) à la console.

  3. cURL exemple mettre le texte de la réponse dans une variable:

    Cela se fait par le phpsh terminal:

    php> $ch = curl_init();
    
    php> curl_setopt($ch, CURLOPT_URL, 'http://i.imgur.com/wtQ6yZR.gif');
    
    php> curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    
    php> $contents = curl_exec($ch);
    
    php> echo $contents;
    

    La variable contient le binaire qui est un gif animé d'un chat, les possibilités sont infinies.

  4. Faire une boucle à partir de l'intérieur d'un fichier PHP:

    Mettez ce code dans un fichier appelé myphp.php:

    <?php
      $curl_handle=curl_init();
      curl_setopt($curl_handle,CURLOPT_URL,'http://www.google.com');
      curl_setopt($curl_handle,CURLOPT_CONNECTTIMEOUT,2);
      curl_setopt($curl_handle,CURLOPT_RETURNTRANSFER,1);
      $buffer = curl_exec($curl_handle);
      curl_close($curl_handle);
      if (empty($buffer)){
          print "Nothing returned from url.<p>";
      }
      else{
          print $buffer;
      }
    ?>
    

    Puis l'exécuter via la ligne de commande:

    php < myphp.php
    

    Vous avez exécuté myphp.php et exécuté ces commandes par l'intermédiaire de l'interprète php et a déversé des tonnes de désordre html et javascript à l'écran.

    Vous pouvez le faire GET et POST des demandes avec curl, tout ce que vous faire est de spécifier les paramètres définis ici: http://curl.haxx.se/docs/httpscripting.html#POST

Rappel de danger:

Attention dumping curl sortie, si tout est interprété et exécuté, votre boîte est la propriété et de vos informations de carte de crédit seront vendus à des tiers et vous obtiendrez un mystérieux $900 responsable de l'Alabama d'un homme sur le plancher de la société c'est une façade pour l'étranger fraude de carte de crédit de la criminalité de l'anneau.

12voto

Naved Ahmed Points 63

L’extension cURL de PHP est conçue pour vous permettre d’utiliser une variété de ressources web dans votre script PHP.

10voto

Jaime Hablutzel Points 1442

cURL en PHP est un pont à utiliser cURL de ligne de commande du langage php

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X