File: /www/备份的/www.ydrbh.com/1.php
<?php
// PayPal认证信息
$clientId = 'AZ5q35RRvAI9oU9ss-E4yRYVELSIaIcLpv_mmd4oPgv7WmvwJupJmzQaQXN2RTsEZgPNQhXmwzGx-D0z'; // 在PayPal开发者平台上获取
$clientSecret = 'EOsd5viKcp8D9nd6JewX7tuqFLc6m-0wl4tmHNeHFu8Giwbw1Hf06rxLuDVRH1QJyJTtmg2VXH9-VEcO'; // 在PayPal开发者平台上获取
// PayPal API 认证 URL
$authUrl = "https://api.sandbox.paypal.com/v1/oauth2/token";
// 创建认证信息
$auth = base64_encode($clientId . ":" . $clientSecret);
// 初始化 cURL
$ch = curl_init();
// 设置 cURL 请求选项
curl_setopt($ch, CURLOPT_URL, $authUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Authorization: Basic $auth",
"Content-Type: application/x-www-form-urlencoded"
]);
// 设置请求体
curl_setopt($ch, CURLOPT_POSTFIELDS, "grant_type=client_credentials");
// 执行 cURL 请求
$response = curl_exec($ch);
curl_close($ch);
// 解析响应并获取访问令牌
$data = json_decode($response, true);
$accessToken = $data['access_token'];
// PayPal的支付创建 API URL
$paymentUrl = 'https://api.sandbox.paypal.com/v1/payments/payment';
// 构建支付请求数据
$paymentData = [
'intent' => 'sale',
'payer' => [
'payment_method' => 'paypal'
],
'transactions' => [
[
'amount' => [
'total' => '10.00',
'currency' => 'USD'
],
'description' => 'Test payment'
]
],
'redirect_urls' => [
'return_url' => 'http://your-website.com/return',
'cancel_url' => 'http://your-website.com/cancel'
]
];
// 设置 cURL 请求
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $paymentUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Authorization: Bearer ' . $accessToken,
'Content-Type: application/json'
]);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($paymentData));
// 执行 cURL 请求
$response = curl_exec($ch);
curl_close($ch);
// 解析响应
$data = json_decode($response, true);
if (isset($data['error'])) {
// 错误处理
echo 'Error: ' . $data['error']['message'];
} else {
// 提取支付链接
$approvalUrl = null;
foreach ($data['links'] as $link) {
if ($link['rel'] == 'approval_url') {
$approvalUrl = $link['href'];
break;
}
}
if ($approvalUrl) {
echo "Redirect the user to: " . $approvalUrl;
} else {
echo "Error: No approval URL found.";
}
}