thinkphp支付宝支付(thinkPHP和onethink微信支付插件分享)
类别:编程学习 浏览量:2749
时间:2021-11-03 15:55:40 thinkphp支付宝支付
thinkPHP和onethink微信支付插件分享thinkPHP和微支付实现的微信支付插件,在微信中调用微信jssdk实现支付,分享给大家参考下
|
//实现的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中view视图的作用(Thinkphp5.0框架视图view的模板布局用法分析)
- thinkphp5如何实现消息队列(thinkPHP5.1框架使用SemanticUI实现分页功能示例)
- vuephp后台开发框架(Vue+thinkphp5.1+axios实现文件上传)
- thinkphp5对接支付宝扫码支付(ThinkPHP框架下整合支付宝支付功能图文教程)
- php微信支付怎么做(ThinkPHP框架整合微信支付之Native 扫码支付模式一图文详解)
- thinkphp分页效果怎样(thinkphp5+layui实现的分页样式示例)
- thinkphp3.2.3 接口开发(ThinkPHP3.2.3框架Memcache缓存使用方法实例总结)
- think php上传服务器(ThinkPHP5+UEditor图片上传到阿里云对象存储OSS功能示例)
- thinkphp5.1手动连接mysql数据库(thinkphp5框架结合mysql实现微信登录和自定义分享链接与图文功能示例)
- php集成支付(ThinkPHP框架整合微信支付之刷卡模式图文详解)
- thinkphp兼容dedecms(DedeCMS Error:Tag disabled:"php"的解决办法)
- thinkphp怎么整合微信支付(ThinkPHP框架实现的微信支付接口开发完整示例)
- thinkphp框架切换数据库(ThinkPHP3.2.3框架实现执行原生SQL语句的方法示例)
- thinkphp5框架分析(thinkPHP5框架路由常用知识点汇总)
- thinkphp框架详解(thinkphp3.2框架中where条件查询用法总结)
- thinkphp支付宝支付(thinkPHP和onethink微信支付插件分享)
- 华为 Watch GT2 Pro 智能手表曝光,新增支持无线充电(华为WatchGT2)
- vivo首款智能手表来了 也有血氧饱和度监测,一次充电18天续航(vivo首款智能手表来了)
- 你知道 七夕 的真正含义吗(你知道七夕的真正含义吗)
- 七夕的寓意(七夕的寓意)
- 苏志燮赵恩静结婚,韩国四大公共财产变三人,这么快就有替补了(苏志燮赵恩静结婚)
- 《内在美》后,一大波新韩剧来袭,李钟硕朴信惠宋慧乔玄彬回归(一大波新韩剧来袭)
热门推荐
- laravel框架如何查询空的信息(Laravel 已登陆用户再次查看登陆页面的自动跳转设置方法)
- js解除网页屏蔽(js检测标题与描述中的关键词发现就替换或跳转到别的页面)
- sqlserver数据库文件包括(详解SQL Server数据库状态和文件状态)
- 让文字居中代码是多少(如何使定义了高度和宽度的< a >里的文字垂直居中实现代码)
- python如何新建虚拟环境(详解如何管理多个Python版本和虚拟环境)
- Cookie常用属性
- css flex布局教程(详解CSS3伸缩布局盒模型Flex布局)
- VPS/云服务器使用3389端口远程连接管理图文教程(Windows)(VPS/云服务器使用3389端口远程连接管理图文教程Windows)
- pythonmatplotlib绘制立体图形(python3使用matplotlib绘制散点图)
- 微信小程序swiper大小调整(微信小程序swiper-dot中的点如何改成滑块详解)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9