Maison  >  Article  >  développement back-end  >  Comment utiliser Curl et PHP pour envoyer des données JSON pour les opérations CRUD de l'API REST ?

Comment utiliser Curl et PHP pour envoyer des données JSON pour les opérations CRUD de l'API REST ?

DDD
DDDoriginal
2024-11-23 02:28:10882parcourir

How to Use Curl and PHP to Send JSON Data for REST API CRUD Operations?

Comment transmettre des données JSON avec Curl et PHP pour PUT, POST, GET et DELETE

Utiliser Curl et PHP pour les opérations CRUD sur Les API REST constituent une approche pratique. Alors que la ligne de commande offre des méthodes simples pour transmettre des données JSON, PHP nécessite une implémentation personnalisée.

Implémentation PHP Curl pour PUT :

<?php
$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);
?>

PHP Curl Implémentation pour POST :

<?php
$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);
?>

Implémentation PHP Curl pour GET (Alternative Approche) :

<?php
$query_string = http_build_query($data);
$url = $url . '?' . $query_string;

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

Implémentation PHP Curl pour DELETE :

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "DELETE");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_json);
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