tp5微信支付2 實際開發與測試

2022-07-16 09:54:08 字數 2367 閱讀 2795

一、引數配置

這裡有兩個配置

2、是支付的設定

2、使用 easywechat介面  獲取授權

class wxtest extends

controller

);

$response->send();

exit

; }

catch (\exception

$e)

}//配置引數

protected

$new_config =[

'debug' => true,

'secret' => 'secret',

'token' => 'token',

'aes_key' => 'aes_key',

'response_type' => 'array',//

指定 api 呼叫返回結果的型別:array(default)/collection/object/raw/自定義類名

'oauth' =>[

'scopes' => ['snsapi_userinfo'],

'callback' => '/index.php/api/wxtest/oauth',//授權**頁面],];

//業務頁面

public

function

profile()

//已經登入過

$user = session('wx_user');

dump(

$user

);

//業務邏輯處理

}

//授權**頁

public

function

oauth()

}

snsapi_base:不彈出授權頁面,直接跳轉,只能獲取使用者openid

snsapi_userinfo:彈出授權頁面,可通過openid拿到暱稱、性別、所在地。並且,即使在未關注的情況下,只要使用者授權,也能獲取其資訊。

public

function wx_pay($bill_no, $amount

)

$jssdk = $this->payment->jssdk;

//統一下單

$result = $this->payment->order->unify([

'body' => 'kingjim',

'out_trade_no' => $bill_no,

'total_fee' => (int)bcmul($amount, 100),

'notify_url' => url('index.php/api/weixinpay/notify', '', '', true), //

'trade_type' => 'jsapi', //

請對應換成你的支付方式對應的值型別

'openid' => $openid

]);

//預支付訂單號prepayid, 生成支付 js 配置

$prepayid = $result['prepay_id'];

$jsapiparameters = $jssdk->bridgeconfig($prepayid

);

return

$jsapiparameters

; }

三、支付**方法

四、前端**

function

onbridgeready(),

function

(res)

});

}

if (typeof weixinjsbridge == "undefined")

else

if (document.attachevent)

}else

TP5微信支付

public function pay openid,fee,test openid openid 支付相關設定 fee i post.total fee fee fee 舉例支付0.01 body test nonce str this nonce str 隨機字串 out trade no th...

TP5微信支付退款

weixinpay php namespace use think log use think db use think cache class weixinpay 退款 param float totalfee 訂單金額 單位元 param float refundfee 退款金額 單位元 par...

tp5微信app支付

支付時例項化該類,呼叫pay方法即可 需要傳引數 namespace use think db class wxpay else return json encode data public function sign data wx key stringsigntemp stringa key 6...