Thinkphp和onethink实现微信支付插件


Posted in PHP onApril 13, 2016

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');
    }

以上就是本文的全部内容,希望对大家学习PHP程序设计有所帮助。

PHP 相关文章推荐
用PHP生成静态HTML速度快类库
Mar 18 PHP
php microtime获取浮点的时间戳
Feb 21 PHP
PHP curl 并发最佳实践代码分享
Sep 05 PHP
php指定函数参数默认值示例代码
Dec 04 PHP
让CodeIgniter数据库缓存自动过期的处理的方法
Jun 12 PHP
CodeIgniter输出中文乱码的两种解决办法
Jun 12 PHP
PHP高级编程实例:编写守护进程
Sep 02 PHP
Yii学习总结之数据访问对象 (DAO)
Feb 22 PHP
微信公众号支付之坑:调用支付jsapi缺少参数 timeStamp等错误解决方法
Jan 12 PHP
php微信开发接入
Aug 27 PHP
php简单随机字符串生成方法示例
Apr 19 PHP
PHP var关键字相关原理及使用实例解析
Jul 11 PHP
PHP MSSQL 分页实例
Apr 13 #PHP
php构造方法中析构方法在继承中的表现
Apr 12 #PHP
非集成环境的php运行环境(Apache配置、Mysql)搭建安装图文教程
Apr 12 #PHP
ThinkPHP框架里隐藏index.php
Apr 12 #PHP
PHP 绘制网站登录首页图片验证码
Apr 12 #PHP
PHP中Restful api 错误提示返回值实现思路
Apr 12 #PHP
PHP给文字内容中的关键字进行套红处理
Apr 12 #PHP
You might like
据说是雅虎的一份PHP面试题附答案
2009/01/07 PHP
php一些错误处理的方法与技巧总结
2013/08/10 PHP
php判断当前操作系统类型
2015/10/28 PHP
ThinkPHP设置禁止百度等搜索引擎转码(简单实用)
2016/02/15 PHP
bcastr2.0 通用的图片浏览器
2006/11/22 Javascript
JS获取IUSR_机器名和IWAM_机器名帐号的密码
2006/12/06 Javascript
比较简单的异步加载JS文件的代码
2009/07/18 Javascript
JS 两日期相减,获得天数的小例子(兼容IE,FF)
2013/07/01 Javascript
网页中可关闭的漂浮窗口实现可自行调节
2013/08/20 Javascript
Jquery 复选框取值兼容FF和IE8(测试有效)
2013/10/29 Javascript
JavaScript分析、压缩工具JavaScript Analyser
2014/12/31 Javascript
vue.js绑定class和style样式(6)
2016/12/09 Javascript
Vue.js之slot深度复制详解
2017/03/10 Javascript
JavaScript实现的选择排序算法实例分析
2017/04/14 Javascript
在layui中layer弹出层点击事件无效的解决方法
2019/09/05 Javascript
基于JavaScript实现留言板功能
2020/03/16 Javascript
vue3.0+vue-router+element-plus初实践
2020/12/02 Vue.js
Python实现的tab文件操作类分享
2014/11/20 Python
Django migrations 默认目录修改的方法教程
2018/09/28 Python
Python OOP类中的几种函数或方法总结
2019/02/22 Python
详解Python静态网页爬取获取高清壁纸
2019/04/23 Python
python networkx 根据图的权重画图实现
2019/07/10 Python
python实现中文文本分句的例子
2019/07/15 Python
python处理excel绘制雷达图
2019/10/18 Python
python 比较字典value的最大值的几种方法
2020/04/17 Python
Python如何使用ConfigParser读取配置文件
2020/11/12 Python
解决pytorch下出现multi-target not supported at的一种可能原因
2021/02/06 Python
Expedia泰国:预订机票、酒店和旅游包(航班+酒店)
2016/09/27 全球购物
英国鞋类及配饰零售商:Kurt Geiger
2017/02/04 全球购物
怎么样写好简历中的自我评价
2013/10/25 职场文书
模具专业推荐信
2013/10/30 职场文书
会计电算化应届生求职信
2013/11/03 职场文书
保荐人的岗位职责
2013/11/19 职场文书
校优秀毕业生主要事迹
2014/05/26 职场文书
市场营销专业自荐书
2014/06/10 职场文书
高中军训的心得体会
2014/09/01 职场文书