PayPal Checkout PHP SDK 使用教程
1. 项目的目录结构及介绍
PayPal Checkout PHP SDK 的目录结构如下:
Checkout-PHP-SDK/
├── composer.json
├── LICENSE
├── README.md
├── samples/
│ ├── CreateOrder.php
│ ├── CaptureOrder.php
│ └── ...
├── src/
│ ├── PayPalCheckoutSdk/
│ │ ├── Core/
│ │ ├── Payments/
│ │ └── ...
│ └── ...
└── tests/
└── ...
目录介绍
composer.json
: Composer 配置文件,用于管理依赖关系。LICENSE
: 项目许可证文件。README.md
: 项目说明文档。samples/
: 示例代码目录,包含如何创建订单、捕获订单等示例。src/
: 源代码目录,包含 SDK 的核心功能和支付相关功能。tests/
: 测试代码目录,包含单元测试和集成测试。
2. 项目的启动文件介绍
PayPal Checkout PHP SDK 没有传统意义上的“启动文件”,因为它是一个库,需要集成到你的 PHP 项目中。你可以通过 Composer 安装 SDK,并在你的项目中引入自动加载文件来使用 SDK。
安装和引入
-
通过 Composer 安装 SDK:
composer require paypal/paypal-checkout-sdk
-
在你的 PHP 文件中引入自动加载文件:
require 'vendor/autoload.php';
示例代码
以下是一个简单的示例,展示如何创建一个订单:
require 'vendor/autoload.php';
use PayPalCheckoutSdk\Core\PayPalHttpClient;
use PayPalCheckoutSdk\Core\SandboxEnvironment;
use PayPalCheckoutSdk\Orders\OrdersCreateRequest;
$clientId = "YOUR_CLIENT_ID";
$clientSecret = "YOUR_CLIENT_SECRET";
$environment = new SandboxEnvironment($clientId, $clientSecret);
$client = new PayPalHttpClient($environment);
$request = new OrdersCreateRequest();
$request->prefer('return=representation');
$request->body = [
"intent" => "CAPTURE",
"purchase_units" => [[
"amount" => [
"currency_code" => "USD",
"value" => "100.00"
]
]]
];
try {
$response = $client->execute($request);
print_r($response);
} catch (HttpException $ex) {
echo $ex->statusCode;
print_r($ex->getMessage());
}
3. 项目的配置文件介绍
PayPal Checkout PHP SDK 的配置主要涉及 PayPalHttpClient
和 SandboxEnvironment
或 LiveEnvironment
的初始化。
配置文件
-
环境配置:
use PayPalCheckoutSdk\Core\PayPalHttpClient; use PayPalCheckoutSdk\Core\SandboxEnvironment; // 或 LiveEnvironment $clientId = "YOUR_CLIENT_ID"; $clientSecret = "YOUR_CLIENT_SECRET"; $environment = new SandboxEnvironment($clientId, $clientSecret); // 或 new LiveEnvironment($clientId, $clientSecret) $client = new PayPalHttpClient($environment);
-
请求配置:
在创建订单或捕获订单的请求中,你需要配置请求体(
$request->body
),指定订单的详细信息,如货币类型、金额等。
示例配置
$request->body = [
"intent" => "CAPTURE",
"purchase_units" => [[
"amount" => [
"currency_code" => "USD",
"value" => "100.00"
]
]]
];
通过以上配置,你可以初始化 PayPal 客户端并发送请求来处理支付相关的操作。