首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

PHP 開發微信支付實戰代碼分享(含 JSAPI 唤醒細節)

     編輯:PHP 相關知識

關鍵前置條件

  • 商戶號已繳納保證金,但仍處於測試階段,需通過程式提交訂單、發貨數據至微信後台審核才能正式發布。
  • 微信後台必須設定支付授權目錄,且需為二/三級實體路徑(如 /pay/wx/),MVC 框架需建立實體子目錄配合。
  • JS 唤醒支付需在 WeixinJSBridgeReady 事件後觸發,確保微信瀏覽器 JSBridge 就緒。

前端喚醒支付標準代碼

<script type="text/javascript">
document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() {
    WeixinJSBridge.invoke('getBrandWCPayRequest', {
        'appId'     : '<?php echo $wOpt['appId'];?>',
        'timeStamp' : '<?php echo $wOpt['timeStamp'];?>',
        'nonceStr'  : '<?php echo $wOpt['nonceStr'];?>',
        'package'   : '<?php echo $wOpt['package'];?>',
        'signType'  : '<?php echo $wOpt['signType'];?>',
        'paySign'   : '<?php echo $wOpt['paySign'];?>'
    }, function(res) {
        if (res.err_msg == 'get_brand_wcpay_request:ok') {
            // 支付成功,可跳轉訂單頁
        } else {
            alert('啟動微信支付失敗: ' + res.err_msg);
        }
        history.go(-1);
    });
}, false);
</script>

後端準備參數要點

  1. 統一下單 API 獲取 prepay_id。
  2. 組裝 package=prepay_id=xxx。
  3. 按微信規範計算 paySign(SHA256 with RSA 或 MD5 視版本)。
  4. 將所有參數陣列 $wOpt 傳給視圖。

參考資源

  • 微擎框架中相關支付模組代碼。
  • 官方文檔:JSAPI 支付。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved