技术文摘
PHP curl 各类请求(get、post、put、delete 等)封装函数示例
2024-12-28 20:32:28 小编
PHP curl 各类请求(get、post、put、delete 等)封装函数示例
在 PHP 开发中,经常需要与外部服务进行数据交互。而 curl 是一个强大的工具,可用于发送各种类型的 HTTP 请求。下面为大家提供 PHP curl 各类请求(get、post、put、delete 等)的封装函数示例,以便在项目中更方便地使用。
<?php
// 发送 GET 请求的函数
function sendGetRequest($url, $headers = []) {
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
$response = curl_exec($curl);
$httpCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
return ['response' => $response, 'httpCode' => $httpCode];
}
// 发送 POST 请求的函数
function sendPostRequest($url, $data, $headers = []) {
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($data));
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
$response = curl_exec($curl);
$httpCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
return ['response' => $response, 'httpCode' => $httpCode];
}
// 发送 PUT 请求的函数
function sendPutRequest($url, $data, $headers = []) {
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "PUT");
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($data));
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
$response = curl_exec($curl);
$httpCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
return ['response' => $response, 'httpCode' => $httpCode];
}
// 发送 DELETE 请求的函数
function sendDeleteRequest($url, $headers = []) {
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "DELETE");
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
$response = curl_exec($curl);
$httpCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
return ['response' => $response, 'httpCode' => $httpCode];
}
?>
在实际使用中,只需要调用相应的函数,并传入正确的参数即可。例如,发送一个 GET 请求:
$getResponse = sendGetRequest('https://example.com/api/data');
发送一个 POST 请求:
$data = ['key1' => 'value1', 'key2' => 'value2'];
$postResponse = sendPostRequest('https://example.com/api/submit', $data);
通过这样的封装,能够使代码更加简洁、易于维护,并且能够方便地处理不同类型的 HTTP 请求。
掌握 PHP curl 的各类请求封装函数对于高效地进行网络数据交互非常有帮助,能够提升开发效率和代码质量。
TAGS: Web 开发 PHP curl 请求封装 PHP 函数示例 HTTP 请求方法