gpt4 book ai didi

thinkPHP和onethink微信支付插件分享

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 30 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章thinkPHP和onethink微信支付插件分享由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

thinkPHP和微支付实现的微信支付插件,在微信中调用微信jssdk实现支付,分享给大家参考下 。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
//实现的Wxpay钩子方法
     public function Wxpay( $param ){
       require './Addons/Wxpay/WxPayPubHelper/WxPayPubHelper.php' ;
       $jsApi = new \JsApi_pub();
      
       //=========步骤1:网页授权获取用户openid============
       if (!isset( $_GET [ 'code' ]))
       {
         //触发微信返回code码
         $url = $jsApi ->createOauthUrlForCode(\WxPayConf_pub::JS_API_CALL_URL. '/order_id/' . $param [ 'order_id' ]);
         Header( "Location: $url" );
       } else
       {
         $order_id = $param [ 'order_id' ];
         $info = M( 'Order' )->where( 'id=' . $order_id )->find();
         if ( empty ( $info ) || $info [ 'is_pay' ] == 1){
           dump( '该订单不存在或已支付' . $order_id );
           exit ();
         }
         $this ->assign( 'info' , $info );
         $a = $info [ 'money' ];
         $b = 100;
         $c = $a * $b ;
        
         //获取code码,以获取openid
         $code = $_GET [ 'code' ];
         $jsApi ->setCode( $code );
         $openid = $jsApi ->getOpenId();
       }
       
       //=========步骤2:使用统一支付接口,获取prepay_id============
       //使用统一支付接口
       $unifiedOrder = new \UnifiedOrder_pub();
       
       $unifiedOrder ->setParameter( "openid" , "$openid" ); //商品描述
       $unifiedOrder ->setParameter( "body" , "在线预订" ); //商品描述
       //自定义订单号,此处仅作举例
       $timeStamp = time();
//       $out_trade_no = \WxPayConf_pub::APPID."$timeStamp";
       $out_trade_no = $info [ 'ordersn' ];
       $unifiedOrder ->setParameter( "out_trade_no" , "$out_trade_no" ); //商户订单号
       $unifiedOrder ->setParameter( "total_fee" , "$c" ); //总金额
       $unifiedOrder ->setParameter( "notify_url" ,\WxPayConf_pub::NOTIFY_URL. '/order_id/' . $param [ 'order_id' ]); //通知地址
       $unifiedOrder ->setParameter( "trade_type" , "JSAPI" ); //交易类型
       
       $prepay_id = $unifiedOrder ->getPrepayId();
       //=========步骤3:使用jsapi调起支付============
       $jsApi ->setPrepayId( $prepay_id );
       $jsApiParameters = $jsApi ->getParameters();
       $this ->assign( 'jsApiParameters' , $jsApiParameters );
 
       $this ->display( 'pay' );
     }

总结 。

以上是我为你收集整理的thinkPHP和onethink微支付插件全部内容,希望文章能够帮你解决thinkPHP和onethink微支付插件所遇到的程序开发问题.

最后此篇关于thinkPHP和onethink微信支付插件分享的文章就讲到这里了,如果你想了解更多关于thinkPHP和onethink微信支付插件分享的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com