ThinkPHP如何接入微信公众号支付场景

2018-02-0304:51:05后端程序开发Comments2,501 views字数 1062阅读模式

微信公众号中微信支付使用的场景越来越多。下面PHP程序员雷雪松就详细的讲解下ThinkPHP如何接入微信公众号支付。

1、下载官方demo,并放到ThinkPHP/Library/Vendor/下面,建议建一个Wxpay文件夹。以后如果想接入支付宝就再建一个Alipay。这样在多种支付的情况下目录可能会比较清晰。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/419.html

ThinkPHP如何接入微信公众号支付场景文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/419.html

2、在WxPay.Config.php文件中修改微信支付相关的参数,并将微信支付商户平台下载的证书放到ThinkPHP/Library/Vendor/Wxpay/cert/文件夹下。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/419.html

1
2
3
4
5
6
7
const APPID = '';//开户邮件中可查看或者微信支付后商户平台
const MCHID = '';//开户邮件中可查看或者微信支付商户平台
const KEY = '';//微信支付商户平台自行设置
const APPSECRET = '';//微信公众号secert
// 证书路径,注意应该填写绝对路径(仅退款、撤销订单时需要),可登录商户平台下载,API证书下载地址:https://pay.weixin.qq.com/index.php/account/api_cert,下载之前需要安装商户操作证书)
const SSLCERT_PATH = 'cert/apiclient_cert.pem';
const SSLKEY_PATH = 'cert/apiclient_key.pem';

3、在微信公众号中设置支付目录,具体步骤:微信支付->开发配置->输入微信支付的地址,须细化到二级目录,以左斜杠“/”结尾。比如:微信支付的链接为:域名/wxpay/Cart/weixinpay/o_no/20170622164600。o_no后面的订单号是随机的订单号。那么微信公众号中支付目录则为:域名/wxpay/Cart/weixinpay/o_no/。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/419.html

ThinkPHP如何接入微信公众号支付场景文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/419.html

4、在微信公众号中设置JS接口安全域名设置和网页授权域名。具体步骤:公众号设置->功能设置。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/419.html

ThinkPHP如何接入微信公众号支付场景文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/419.html

注意:在微信支付的时候,首先会获取openID。获取openID的过程是首先请求微信,微信会把code回转到当前的请求链接。简单的理解就是微信支付的链接会被请求两次,第一次是我们请求调用微信支付,第二次是微信回调获取openID。这样就可能在第二次运行该微信支付的链接?后面参数会丢失。具体代码可以查看微信WxPay.JsApiPay.php中的GetOpenid方法。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/419.html

如果把这几个微信支付的关键点都搞懂了,具体的代码应该就比较好些写了。支付和通知都可以参考微信支付中的exmaple文件夹里的文件。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/419.html

  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/bc/419.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定