首頁 >後端開發 >php教程 >如何在 PHP 中使用 PUT、POST、GET 和 DELETE 透過 cURL 發送 JSON 資料?

如何在 PHP 中使用 PUT、POST、GET 和 DELETE 透過 cURL 發送 JSON 資料?

DDD
DDD原創
2024-12-20 07:38:17688瀏覽

How to Send JSON Data with cURL in PHP Using PUT, POST, GET, and DELETE?

PHP 中的cURL:透過PUT、POST、GET 傳遞JSON 資料

在REST API 開發中,cURL 是用於測試和驗證的寶貴工具。與遠端伺服器通訊。本文示範如何使用四種常見的 HTTP 方法透過 cURL 傳遞 JSON 資料:PUT、POST、GET 和 DELETE。

PUT

此方法可讓您更新一種資源。以下 PHP 程式碼範例展示如何在 PUT 請求中傳送 JSON 資料:

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

POST

POST 用於建立新資源。下面的 PHP 程式碼展示如何使用 POST 請求發送 JSON 資料:

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

GET

GET 旨在檢索資源。由於 JSON 資料無法附加到 URL,因此您必須對其進行編碼並將其作為查詢字串參數傳遞。請參閱 @Dan H 的答案,以了解使用 GET 請求發送 JSON 資料的工作範例。

DELETE

DELETE 方法從伺服器移除資源。以下 PHP 程式碼示範如何使用 JSON 資料執行 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);
?>

以上是如何在 PHP 中使用 PUT、POST、GET 和 DELETE 透過 cURL 發送 JSON 資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn