项目地址:https://github.com/Han-MeiM/hjx-Hold-all
一:设置微信公众号
首先你要有一个申请过支付的公众号并登陆。
在微信支付中设置支付授权目录为自己的域名。
注意最后结尾有一个'/'左斜杠
设置授权域名。

因为我们是通过前端的JS来调用的支付。
所以还需要设置JS接口安全域名。

二、导入sdk
/extend/weixinpay/Weixinpay.php
相信自己下载过官方demo的同学。
当你看见鹅厂的sdk一个功能所需要的函数在三个文件夹来回跳的时候肯定气的想砸键盘。
它将很多功能都杂糅分散到多个文件里面。这里要说的是另外自己封装的。
跟整个业务比较重要的地方是支付的信息。

这里我是将订单号放入url中。通过订单号在数据库中获取其他信息。
也可以将其他信息一并放入url中。看个人喜好而定。方法很多。
三、配置
根据官方说明。
此处需要凑齐微信支付的七龙珠(微信公众号参数)。
/application/extra/Wxpay.php
这是TP5中的扩展配置文件。

四、调用支付
/application/pay/controller/Weixinpay.php

调用sdk

最后将获得的数据传递给前端。
/application/pay/view/weixinpay/pay.html
前端调用JS-SDK。

五、获取回调
在支付完毕后。
微信会通过你填写的回调URL。
将信息返回到URL当中。
/application/pay/controller/Weixinpay.php

通过file_put_contents可以将获取的回调信息存储在文件中查看。
避免不知道返回哪些信息。
如果出现签名错误
可以使用官方的 微信公众平台支付接口调试工具(https://pay.weixin.qq.com/wiki/tools/signverify/)
对比自己的签名。
查看配置信息是否错误。
最佳答案