一、说在前面的话
1.微信H5支付一定要开通,没开通就别扯淡了,它和APP支付不是一个
2.微信支付后台一定要配置js安全域,否则支付时可能会因为地址不在该域下导致支付失败(提示商户参数配置错误,其实跟参数没半毛关系)
3.微信的价格1是1分,所以价格total_fee参数没有零点几几的情况。(支付宝0.01是一分)
4.微信请和返回都是XML格式,注意转化,可以写个公共方法
5.你可以设置支付成功后的回调页面,但是:要对整个回调redirect_url进行urlencode处理
别特么只知道处理域名,不管参数
二、直接上代码(按照步骤加解读,自己抽离相关方法)
1.整理所有H5支付的参数,数组格式
$scene = ['h5_info' => ['type' => 'h5_info', 'app_name' => 'H5支付', 'package_name' => 'baoming']];//这个参数一定要加
$scene = json_encode($scene);
$param = [
'appid'=>$config['appid'],//产品ID
'mch_id'=>$config['mch_id'],//商户ID
'nonce_str'=> $nonce_str,//16位随机数
'body'=>'点购买