1.获取openid
方法主体
{
$code = '前端传的code';
$appid = '你的appid;
$secret = '你的secret ';
$api = "https://api.weixin.qq.com/sns/jscode2session?appid={$appid}&secret={$secret}&js_code={$code}&grant_type=authorization_code";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $api);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_HEADER, 0);
$output = curl_exec($ch);
curl_close($ch);
$json_obj = json_decode($output, true);
$result = $this->wxPay($json_obj['openid']);
将$result 返回给前台
}
2.获取prepay_id 并用prepay_id 生成支付sign
public function wxPay($openid)
{
$appid = '你的appid';
$url = "https://api.mch.weixin.qq.com/v3/pay/transactions/jsapi";
$nonceStr = $this->getNonceStr();
$timeStamp = (string)time();
$out_trade_no = (string)date('YmdHis') . mt_rand(1000,9999);
$data = array(