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 相关文章推荐
兼容PHP5的PHP目录管理函数库
Jul 10 PHP
PHP 遍历文件实现代码
May 04 PHP
php中curl和file_get_content的区别
May 10 PHP
CodeIgniter错误mysql_connect(): No such file or directory解决方法
Sep 06 PHP
Laravel 5框架学习之表单验证
Apr 08 PHP
PHP curl伪造IP地址和header信息代码实例
Apr 27 PHP
php获取指定(访客)IP所有信息(地址、邮政编码、国家、经纬度等)的方法
Jul 06 PHP
如何使用PHP对网站验证码进行破解
Sep 17 PHP
Symfony2联合查询实现方法
Mar 18 PHP
PHP入门教程之日期与时间操作技巧总结(格式化,验证,获取,转换,计算等)
Sep 11 PHP
php实现水印文字和缩略图的方法示例
Dec 29 PHP
PHP explode()函数用法讲解
Feb 15 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
IIS6.0+PHP5.x+MySQL5.x+Zend3.0x+GD+phpMyAdmin2.8x通用安装实例(已经完成)
2006/12/06 PHP
php explode函数实例代码
2012/02/27 PHP
解析php中如何调用用户自定义函数
2013/08/06 PHP
php实现在新浪云中使用imagick生成缩略图并上传的方法
2016/09/26 PHP
js前台分页显示后端JAVA数据响应
2013/03/18 Javascript
JS打开新窗口防止被浏览器阻止的方法
2015/01/03 Javascript
js实现文本框支持加减运算的方法
2015/08/19 Javascript
酷炫jQuery全屏3D焦点图动画效果
2016/03/22 Javascript
使用BootStrap实现悬浮窗口的效果
2016/12/13 Javascript
vue.js $refs和$emit 父子组件交互的方法
2017/12/20 Javascript
Vue 无限滚动加载指令实现方法
2019/05/28 Javascript
微信小程序如何利用getCurrentPages进行页面传值
2019/07/01 Javascript
vue中uni-app 实现小程序登录注册功能
2019/10/12 Javascript
Vue Object.defineProperty及ProxyVue实现双向数据绑定
2020/09/02 Javascript
Vue axios获取token临时令牌封装案例
2020/09/11 Javascript
Python显示进度条的方法
2014/09/20 Python
Python实现遍历windows所有窗口并输出窗口标题的方法
2015/03/13 Python
使用Python的Tornado框架实现一个简单的WebQQ机器人
2015/04/24 Python
tensorflow 打印内存中的变量方法
2018/07/30 Python
Python lxml解析HTML并用xpath获取元素的方法
2019/01/02 Python
python 实现12bit灰度图像映射到8bit显示的方法
2019/07/08 Python
Python list与NumPy array 区分详解
2019/11/06 Python
自定义Django Form中choicefield下拉菜单选取数据库内容实例
2020/03/13 Python
Pycharm pyuic5实现将ui文件转为py文件,让UI界面成功显示
2020/04/08 Python
python获取响应某个字段值的3种实现方法
2020/04/30 Python
台湾演唱会订票网站:StubHub台湾
2019/06/11 全球购物
销售代表求职自荐信
2013/10/01 职场文书
路政管理毕业自荐书范文
2014/02/10 职场文书
一月红领巾广播稿
2014/02/11 职场文书
旅游安全协议书
2014/04/21 职场文书
教师对学生的评语
2014/04/28 职场文书
护士节策划方案
2014/05/19 职场文书
工地安全质量标语
2014/06/07 职场文书
护理专科学生自荐书
2014/07/05 职场文书
基层党组织建设整改方案
2014/09/16 职场文书
初中生物教学随笔
2015/08/15 职场文书