首页 > php教程 > php手册 > 正文

基于ThinkPay的微信支付(JSAPI)

php中文网
发布: 2016-06-07 11:34:58
原创
1355人浏览过

基于ThinkPay的微信支付,摒弃腾讯自己搞的SDK,封装的太复杂了,直接基于ThinkPay一个文件实现微信支付,加群130747567。
基于ThinkPay的微信支付,摒弃腾讯自己搞的SDK,封装的太复杂了,直接基于ThinkPay一个文件实现微信支付,加群130747567。
基于ThinkPay的微信支付(JSAPI)
基于ThinkPay的微信支付(JSAPI)/**<br>  * 微信支付驱动<br>  */<br> class Wxpay extends \Addons\Pay\ThinkPay\Pay\Pay {<br>     protected $gateway = 'https://api.mch.weixin.qq.com/pay/unifiedorder';<br>     protected $orderquery = 'https://api.mch.weixin.qq.com/pay/orderquery';<br>     protected $config  = array(<br>         'appid'     =&gt; '',<br>         'appsecret' =&gt; '',<br>         'mchid'     =&gt; '',<br>         'key'       =&gt; ''<br>     );<br><br>     public function check() {<br>         if (!$this-&gt;config['appid'] || !$this-&gt;config['appsecret'] || !$this-&gt;config['mchid'] || !$this-&gt;config['key']) {<br>             E("微信支付设置有误!");<br>         }<br>         return true;<br>     }<br><br>     public function buildRequestForm($pay_data) {<br>         // 获取用户openId,微信公众号JSAPI支付必须<br>         $openId = $this-&gt;GetOpenid();<br>         $param = array(<br>             'appid'            =&gt; $this-&gt;config['appid'],<br>             'mch_id'           =&gt; $this-&gt;config['mchid'],<br>             'nonce_str'        =&gt; $this-&gt;getNonceStr(),<br>             'body'             =&gt; $pay_data['body'],<br>             'out_trade_no'     =&gt; $pay_data['out_trade_no'],<br>             'total_fee'        =&gt; $pay_data['money'] * 100,<br>             'spbill_create_ip' =&gt; $_SERVER['REMOTE_ADDR'],<br>             'notify_url'       =&gt; $this-&gt;config['notify_url'],<br>             'trade_type'       =&gt; 'JSAPI',<br>             'openid'           =&gt; $openId,<br>         );<br><br>         // 签名<br>         $param['sign'] = $this-&gt;MakeSign($param);<br>         $xml_param = $this-&gt;ToXml($param);<br>         $result = $this-&gt;FromXml($this-&gt;postXmlCurl($xml_param, $this-&gt;gateway));<br>         if($result['return_code'] === 'SUCCESS'){<br>             if ($this-&gt;CheckSign($result)) {<br>                 $jsApiParameters = $this-&gt;GetJsApiParameters($result);<br>                 $pay_page =                      <br>                         <br>                             <meta> <br>                             <meta> <br>                             <title>微信支付</title> <br>                             <script><br /> //调用微信JS api 支付<br /> function jsApiCall()<br /> {<br /> WeixinJSBridge.invoke(<br /> &#039;getBrandWCPayRequest&#039;,<br /> {$jsApiParameters},<br /> function(res){<br /> WeixinJSBridge.log(res.err_msg);<br /> //alert(res.err_code+res.err_desc+res.err_msg);<br /> }<br /> );<br /> }<br /> <br /> function callpay()<br /> {<br /> if (typeof WeixinJSBridge == "undefined"){<br /> if( document.addEventListener ){<br /> document.addEventListener(&#039;WeixinJSBridgeReady&#039;, jsApiCall, false);<br /> }else if (document.attachEvent){<br /> document.attachEvent(&#039;WeixinJSBridgeReady&#039;, jsApiCall); <br /> document.attachEvent(&#039;onWeixinJSBridgeReady&#039;, jsApiCall);<br /> }<br /> }else{<br /> jsApiCall();<br /> }<br /> }<br /> </script><br>                         <br>                         <br>                             <br><br>                             <font><b>该笔订单支付金额为<span>{$pay_data['money']}</span>元</b></font><br><br><br>                             <div> <br>                                 <button>立即支付</button><br>                             </div> <br>                         <br>                         <br> EOF;<br>                 return $pay_page;<br>             }<br>         } else {<br>             E("微信订单错误!" . $result['return_msg']);<br>         }<br>     }<br> }

AD:真正免费,域名+虚机+企业邮箱=0元

微信app下载
微信app下载

微信是一款手机通信软件,支持通过手机网络发送语音短信、视频、图片和文字。微信可以单聊及群聊,还能根据地理位置找到附近的人,带给大家全新的移动沟通体验,有需要的小伙伴快来保存下载体验吧!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门推荐
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号