隨著移動支付的普及和用戶需求的增長,支付寶和微信支付已成為最主流的在線支付方式。在開發電商平台或在線服務時,集成這兩大支付方式成為必備技能。本文將基於PHP語言,介紹支付寶與微信支付的集成方法,並提供詳細代碼示例,助力開發者高效實現支付功能。
支付寶作為國內使用最廣泛的第三方支付平台,提供完善的開發接口和豐富的文檔支持。以下是基於PHP集成支付寶支付的主要步驟:
require_once 'path/to/AopSdk.php';
$appId = 'your_app_id'; // 替換為實際應用ID
$privateKey = 'your_private_key'; // 替換為實際私鑰
$publicKey = 'alipay_public_key'; // 替換為支付寶公鑰
$alipay = new AopClient();
$alipay->gatewayUrl = 'https://openapi.alipay.com/gateway.do';
$alipay->appId = $appId;
$alipay->rsaPrivateKey = $privateKey;
$alipay->alipayrsaPublicKey = $publicKey;
$bizContent = [
'subject' => '測試訂單',
'out_trade_no' => 'test_order_20220101',
'total_amount' => '0.01',
'product_code' => 'FAST_INSTANT_TRADE_PAY',
];
$request = new AlipayTradePagePayRequest();
$request->setNotifyUrl('your_notify_url'); // 異步通知地址
$request->setReturnUrl('your_return_url'); // 同步跳轉地址
$request->setBizContent(json_encode($bizContent, JSON_UNESCAPED_UNICODE));
$response = $alipay->pageExecute($request);
echo $response;
$alipayPublicKey = 'alipay_public_key'; // 支付寶公鑰
$verifyResult = $alipay->rsaCheckV1($_POST, $alipayPublicKey, 'RSA2');
if ($verifyResult) {
// 驗證成功,處理訂單業務邏輯
echo 'success';
} else {
// 驗證失敗
echo 'fail';
}
微信支付是騰訊旗下的支付平台,尤其在移動端用戶中擁有極高的普及率。以下介紹PHP集成微信支付的流程:
require_once 'path/to/WxPay.Api.php';
$appId = 'your_app_id'; // 應用ID
$merchantId = 'your_merchant_id'; // 商戶號
$apiKey = 'your_api_key'; // API密鑰
$wxPayConfig = new WxPayConfig();
$wxPayConfig->SetAppId($appId);
$wxPayConfig->SetMerchantId($merchantId);
$wxPayConfig->SetKey($apiKey);
$wxPay = new WxPayApi($wxPayConfig);
$wxPayData = new WxPayUnifiedOrder();
$wxPayData->SetBody('測試訂單');
$wxPayData->SetOutTradeNo('test_order_20220101');
$wxPayData->SetTotalFee(1); // 以分為單位
$wxPayData->SetTradeType('JSAPI');
$wxPayData->SetOpenId('your_open_id'); // 用戶OpenID
$result = $wxPay->unifiedOrder($wxPayData);
$jsApiParameters = $wxPay->getJsApiParameters($result['prepay_id']);
$wxPayNotify = new WxPayNotify($wxPayConfig);
$wxPayNotify->Handle(false);
$orderInfo = $wxPayNotify->GetPayOrder();
if ($orderInfo['return_code'] === 'SUCCESS' && $orderInfo['result_code'] === 'SUCCESS') {
// 支付驗證成功,處理訂單
$wxPayNotify->ReplyNotify('SUCCESS');
} else {
// 驗證失敗,返回失敗通知
$wxPayNotify->ReplyNotify('FAIL');
}
本文系統介紹瞭如何通過PHP集成支付寶和微信支付,包括賬號申請、SDK下載、支付請求發起及支付結果處理的完整步驟,並配有實用代碼示例。實際開發中,建議根據業務需求對流程進行靈活調整。希望本文內容能幫助你順利完成支付功能的開發和上線。