當前位置: 首頁> 最新文章列表> PHP使用cURL調用API接口的完整示例與實用教程

PHP使用cURL調用API接口的完整示例與實用教程

gitbox 2025-07-26

概述

在PHP開發中,常常需要與第三方服務或其他系統進行數據交互,API接口是最常用的方式之一。借助PHP內置的cURL擴展,我們可以方便地實現HTTP請求,完成與API的通信。本文將以一個完整的示例,演示如何使用PHP的cURL操作API接口。

準備工作

安裝cURL擴展

開始之前,請確保PHP環境已安裝cURL擴展。可以通過命令行檢查:

 php -i | grep -i curl

如果輸出包含curl相關信息,說明cURL已安裝。否則,可以通過以下命令安裝(以Debian/Ubuntu為例):

 sudo apt-get install php-curl

創建cURL操作API接口的類

為了代碼結構清晰和易於維護,我們封裝一個類,集中處理cURL請求。

class CurlApiClient {
    private $baseUrl;
    
    public function __construct($baseUrl) {
        $this->baseUrl = $baseUrl;
    }
    
    public function request($endpoint, $params = array(), $method = 'GET') {
        $url = $this->baseUrl . '/' . $endpoint;
        $ch = curl_init();
        if ($method == 'POST') {
            curl_setopt($ch, CURLOPT_POST, 1);
            curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));
        } else {
            $url .= '?' . http_build_query($params);
        }
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        $response = curl_exec($ch);
        if (curl_errno($ch)) {
            $error = curl_error($ch);
            curl_close($ch);
            throw new Exception("cURL request error: " . $error);
        }
        curl_close($ch);
        return $response;
    }
}

使用cURL類調用API接口

下面是如何使用上面封裝的類進行API請求的示例:

$baseUrl = 'https://api.example.com';
$apiKey = 'your-api-key';
$client = new CurlApiClient($baseUrl);
try {
    $endpoint = 'users';
    $params = array('apiKey' => $apiKey);
    $response = $client->request($endpoint, $params, 'GET');
    echo $response;
} catch (Exception $e) {
    echo '請求失敗:' . $e->getMessage();
}

以上代碼演示了GET請求的實現,POST請求只需將最後一個參數改為"POST",並傳遞相應的參數數組即可。

總結

本文介紹了PHP環境中安裝cURL擴展的方法,封裝了一個通用的API調用類,並通過實例演示瞭如何發起GET和POST請求。使用這種封裝方式,可以使API調用更加模塊化和易於維護,適合各種PHP項目中集成API功能。