一、对于微信支付(引入微信支付类)
由于微信支付文件比较多,一个文件可能有很多类,所以使用Tp框架的时候
使用Vendor()来引入第三方的类库
该微信支付类文件放在ThinkPHP\Library\Vendor目录下:
引入方法:Vendor(wxpay.wxpay)引入Vendor/wxpay/wxpay.php引入了wxpay文件夹下的wxpay.php文件,引入的文件不受名字空间的限制(vendor目录下的文件不受名字空间的限制)调用wxpay.php里面的类时,使用举例:
$payment_api= new \wxpay($rst,$order_info);
记住一定要加上\否则无效
Vendor('wxpay.phpqrcode.phpqrcode');引入Vendor/wxpay/phpqrcode/phpqrcode.php文件
使用phpqrcode里的类调用方法时:
\QRcode::png($data);记住\也不能省,否则无效。(类调用静态的方法)
二:支付流程
微信支付
1、首先在商户后台生成预交易订单,点击确认支付后调用统一API下单接口,携带支付信息,给微信支付系统发送请求,返回请求的url,(这个url生成扫描的二维码用)
2、商户使用返回的url通过调用生成二维码图片的方法,生成支付所用的二维码(该二维码含有订单信息)
3、用户扫码后,给微信支付系统发送请求,微信支付系统验证信息的有效性,发起用户授权支付
4、用户输入密码,确认支付。微信支付系统收到支付确认信息后,返回给客户端信息,显示支付成功。同时也给商户后台发送请求。商户后台接到请求后,告知微信后台不在发送信息。同时商户后台系统根据返回的结果,更新订单支付状态
5、如果用户没有收到请求可以调用微信api查询接口,查询订单信息