Maison > développement back-end > tutoriel php > Comment effectuer une requête HTTP POST à ​​l'aide de PHP cURL ?

Comment effectuer une requête HTTP POST à ​​l'aide de PHP cURL ?

Linda Hamilton
Libérer: 2024-12-29 20:47:18
original
609 Les gens l'ont consulté

How to Perform an HTTP POST Request Using PHP cURL?

Exemple PHP cURL HTTP POST

Lorsque vous travaillez avec des applications Web, il est souvent nécessaire d'envoyer des requêtes HTTP à des serveurs distants. En PHP, l'extension cURL fournit un moyen puissant et polyvalent d'y parvenir. Cet article montre comment effectuer un HTTP POST à ​​l'aide de PHP cURL.

Énoncé du problème

Supposons que nous souhaitions envoyer les données suivantes à www.example.com :

username=user1, password=passuser1, gender=1
Copier après la connexion

La réponse attendue du serveur est "result=OK".

Solution PHP cURL

Pour envoyer une requête HTTP POST avec PHP cURL, suivez ces étapes :

  1. Initialisez une session cURL à l'aide de curl_init() :
$ch = curl_init();
Copier après la connexion
  1. Définissez le URL du serveur distant utilisant curl_setopt() :
curl_setopt($ch, CURLOPT_URL, "http://www.example.com/tester.phtml");
Copier après la connexion
  1. Indiquez qu'il s'agit d'une requête HTTP POST en utilisant CURLOPT_POST :
curl_setopt($ch, CURLOPT_POST, true);
Copier après la connexion
  1. Créez les données POST à ​​l'aide de http_build_query() et définissez-les à l'aide de CURLOPT_POSTFIELDS :
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query(array('postvar1' => 'value1')));
Copier après la connexion
  1. Récupérez la réponse du serveur à l'aide de curl_exec() et définissez CURLOPT_RETURNTRANSFER sur true :
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$server_output = curl_exec($ch);
Copier après la connexion
  1. Fermez la session cURL en utilisant curl_close() :
curl_close($ch);
Copier après la connexion
  1. Traitez la réponse du serveur comme vous le souhaitez :
if ($server_output == "OK") { ... } else { ... }
Copier après la connexion

Exemple de code

Voici un exemple PHP complet qui démontre les étapes ci-dessus :

// A very simple PHP example that sends a HTTP POST to a remote site

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "http://www.example.com/tester.phtml");
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, 
          http_build_query(array('postvar1' => 'value1')));

// Receive server response ...
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$server_output = curl_exec($ch);

curl_close($ch);

// Further processing ...
if ($server_output == "OK") { ... } else { ... }
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal