當前位置: 首頁> 最新文章列表> PHP支付集成教程:支付寶與微信支付完整實現指南

PHP支付集成教程:支付寶與微信支付完整實現指南

M66 2025-06-22

PHP學習筆記:支付寶與微信支付集成

隨著移動支付的普及和用戶需求的增長,支付寶和微信支付已成為最主流的在線支付方式。在開發電商平台或在線服務時,集成這兩大支付方式成為必備技能。本文將基於PHP語言,介紹支付寶與微信支付的集成方法,並提供詳細代碼示例,助力開發者高效實現支付功能。

一、支付寶支付集成

支付寶作為國內使用最廣泛的第三方支付平台,提供完善的開發接口和豐富的文檔支持。以下是基於PHP集成支付寶支付的主要步驟:

  1. 申請支付寶開發者賬號首先,需在支付寶開放平台註冊開發者賬號,獲取應用ID及密鑰。
  2. 下載支付寶PHP SDK 官方SDK可通過GitHub獲取,下載後引入項目中。
  3. 引入SDK核心文件確保項目中包含以下文件:
    - AopSdk.php
    - AopCertification.php
    - AopClient.php
  4. 創建支付寶實例在代碼中配置應用ID和密鑰,初始化支付寶客戶端:
 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;
  1. 發起支付請求使用支付寶客戶端創建訂單並發起支付:
 $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;
  1. 處理支付結果通知支付寶支付成功後,會通過異步通知將結果發送到後台,需編寫相應邏輯驗證和處理:
 $alipayPublicKey = 'alipay_public_key'; // 支付寶公鑰
$verifyResult = $alipay->rsaCheckV1($_POST, $alipayPublicKey, 'RSA2');

if ($verifyResult) {
  // 驗證成功,處理訂單業務邏輯
  echo 'success';
} else {
  // 驗證失敗
  echo 'fail';
}

二、微信支付集成

微信支付是騰訊旗下的支付平台,尤其在移動端用戶中擁有極高的普及率。以下介紹PHP集成微信支付的流程:

  1. 申請微信開發者賬號在微信開放平台註冊賬號,獲取應用ID、商戶號和API密鑰。
  2. 引入微信支付PHP SDK 官方SDK可通過GitHub下載並引入項目。
  3. 創建微信支付實例配置應用相關信息,初始化微信支付客戶端:
 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);
  1. 發起支付請求使用微信支付API創建支付訂單,例如微信公眾號支付:
 $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']);
  1. 處理支付結果通知微信支付成功後,後台接收異步通知並處理訂單狀態:
 $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下載、支付請求發起及支付結果處理的完整步驟,並配有實用代碼示例。實際開發中,建議根據業務需求對流程進行靈活調整。希望本文內容能幫助你順利完成支付功能的開發和上線。