所有文章 > 如何集成API > PHP 调用 API 全面指南:cURL 实战与 RapidAPI 集成教程
PHP 调用 API 全面指南:cURL 实战与 RapidAPI 集成教程

PHP 调用 API 全面指南:cURL 实战与 RapidAPI 集成教程

纵观 PHP 的发展历程,这种编程语言经历了几次起伏,但自从第七版发布以来,PHP 重新确立了其作为最受欢迎的 Web 开发语言之一的地位。如今,许多 Web 应用程序都需要与外部 API 交互,以获取必要的数据或扩展功能。而 PHP 提供了一组强大的函数,可以轻松实现 API 的调用。本文将详细介绍如何使用 PHP 调用 API。


一. 使用 cURL 调用 API 的基础知识

在 PHP 中,cURL 是一个常用工具,用于执行 HTTP 请求。cURL 项目包括两个主要部分:

  • cURL 命令行工具:用于从终端发送 HTTP 请求。例如:

    curl -X GET https://www.google.com/

    该命令会向 Google 服务器发送 GET 请求,并返回页面内容。

  • libcurl 库:这是一个可嵌入到程序中的传输库,PHP 通常通过此库与 API 交互。


二. 开始使用 PHP 调用 API 的准备工作

在开始之前,确保以下环境已配置:

  1. 安装 PHP。
  2. 安装并启用 php-curl 扩展。

三. API 请求方法简介

API 请求方法定义了我们与服务器交互的操作类型。常见的请求方法包括:

  • GET:用于从服务器检索信息,例如获取产品详情。
  • POST:用于向服务器提交新数据,例如添加评论。
  • PUT:用于更新现有数据,例如修改博客文章内容。
  • DELETE:用于删除已有数据。

1. 什么是 API 端点?

API 端点是一个特定的 URL 地址,用于访问 API 的功能或数据。例如:

https://best-tours.com/best-tours-prague

这是一个端点,通过它可以获取布拉格最佳旅游列表。通常,端点名称与其功能相关联。


四. 使用 RapidAPI 演示 API 请求

为了更好地理解 API 请求方法,我们将以 RapidAPI 平台上的 KVStore API 为例。RapidAPI 是一个 API 集成平台,提供数千个 API 的访问权限。

1. 如何找到 KVStore API

  1. RapidAPI 的搜索框中输入 “KVStore API”。
  2. 或从 “所有类别” 中选择 “数据” 类别,找到 KVStore API

选择 KVStore API 后,您将看到 API 端点的详细信息,包括导航、端点列表和代码片段(支持多种编程语言)。


五. 使用 PHP 实现 API 请求方法

下面通过 PHP 和 cURL 分别实现 POST、GET、PUT、DELETE 请求。

1. 发出 POST 请求

// KVStore API URL
$url = 'https://kvstore.p.rapidapi.com/collections';

// 创建集合对象
$data = [
    'collection' => 'RapidAPI'
];

// 初始化cURL会话
$curl = curl_init($url);

// 配置cURL选项
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($curl, CURLOPT_HTTPHEADER, [
    'X-RapidAPI-Host: kvstore.p.rapidapi.com',
    'X-RapidAPI-Key: [Input your RapidAPI Key Here]',
    'Content-Type: application/json'
]);

// 执行cURL请求
$response = curl_exec($curl);

// 关闭cURL会话
curl_close($curl);

// 输出服务器响应
echo $response . PHP_EOL;

a. 代码解析

  • CURLOPT_RETURNTRANSFER:将响应结果作为字符串返回。
  • CURLOPT_POST:指定请求类型为 POST。
  • CURLOPT_POSTFIELDS:将数据编码为 JSON 格式并发送。
  • CURLOPT_HTTPHEADER:设置认证信息和内容类型。

2. 发出 GET 请求

$url = 'https://kvstore.p.rapidapi.com/collections/RapidAPI';

$curl = curl_init($url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, [
    'X-RapidAPI-Host: kvstore.p.rapidapi.com',
    'X-RapidAPI-Key: [Input your RapidAPI Key Here]'
]);

$response = curl_exec($curl);
curl_close($curl);

echo $response . PHP_EOL;

3. 发出 PUT 请求

$url = 'https://kvstore.p.rapidapi.com/collections/RapidAPI';
$data = [
    'key' => 'exampleKey',
    'value' => 'updatedValue'
];

$curl = curl_init($url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($curl, CURLOPT_HTTPHEADER, [
    'X-RapidAPI-Host: kvstore.p.rapidapi.com',
    'X-RapidAPI-Key: [Input your RapidAPI Key Here]',
    'Content-Type: application/json'
]);

$response = curl_exec($curl);
curl_close($curl);

echo $response . PHP_EOL;

4. 发出 DELETE 请求

$url = 'https://kvstore.p.rapidapi.com/collections/RapidAPI';

$curl = curl_init($url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'DELETE');
curl_setopt($curl, CURLOPT_HTTPHEADER, [
    'X-RapidAPI-Host: kvstore.p.rapidapi.com',
    'X-RapidAPI-Key: [Input your RapidAPI Key Here]'
]);

$response = curl_exec($curl);
curl_close($curl);

echo $response . PHP_EOL;

六. 结论

本文详细介绍了如何使用 PHP 和 cURL 调用 API,包括 GET、POST、PUT、DELETE 四种常见请求方法的实现。

通过这些方法,开发者可以:

  • 快速集成外部服务
  • 构建功能强大的 Web 应用
  • 提升 PHP 项目的灵活性和可扩展性

PHP 作为高效的 Web 开发语言,通过与 API 的结合,能够显著扩展应用场景。希望本文能为您在项目中更好地使用 API 提供实用指导。


原文链接: https://rapidapi.com/blog/how-to-use-an-api-with-php/

#你可能也喜欢这些API文章!

我们有何不同?

API服务商零注册

多API并行试用

数据驱动选型,提升决策效率

查看全部API→
🔥

热门场景实测,选对API

#AI文本生成大模型API

对比大模型API的内容创意新颖性、情感共鸣力、商业转化潜力

25个渠道
一键对比试用API 限时免费

#AI深度推理大模型API

对比大模型API的逻辑推理准确性、分析深度、可视化建议合理性

10个渠道
一键对比试用API 限时免费