Maison >développement back-end >tutoriel php >Comment envoyer des données JSON avec Curl et PHP en utilisant PUT, POST et GET ?

Comment envoyer des données JSON avec Curl et PHP en utilisant PUT, POST et GET ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-28 06:03:13691parcourir

How to Send JSON Data with Curl and PHP using PUT, POST, and GET?

Curl et PHP : transmission de données JSON via PUT, POST et GET

Lors de l'utilisation de curl en PHP pour interagir avec une API REST, les données JSON peuvent être transmises via trois méthodes de requête HTTP courantes : PUT, POST et GET. Cet article fournit un guide détaillé sur la manière de réaliser efficacement ces transferts de données.

PUT

Pour effectuer une requête PUT avec une charge utile JSON, suivez ces étapes :

$data = array('username' => 'dog', 'password' => 'tall');
$data_json = json_encode($data);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json','Content-Length: ' . strlen($data_json)));
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($ch, CURLOPT_POSTFIELDS,$data_json);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response  = curl_exec($ch);
curl_close($ch);

POST

Pour une requête POST avec des données JSON, utilisez ceci code :

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$data_json);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response  = curl_exec($ch);
curl_close($ch);

GET

Comme indiqué dans la réponse de @Dan H, vous pouvez incorporer des données JSON dans une requête GET en les ajoutant à l'URL sous forme de chaîne de requête :

$url .= '?data=' . urlencode(json_encode($data));

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response  = curl_exec($ch);
curl_close($ch);

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!

Déclaration:
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