15年软件开发经验 只做源码定制 互联网+定制化解决方案

15年软件开发经验,只做源码定制!

原创设计 定制开发

满足您的个性化需求

当前位置:首页 后端开发 Thinkphp5

微信扫码支付,PC端,扫码支付

教腾豪| 发布于 2021-12-18 17:09:19| 303阅读| 0点赞| 0评论
举报

对接微信扫码支付API文档,PHP扫码支付dome

首先生成订单,需要生成订单的订单号去请求微信支付接口,去商户平台拿商户的商户号,和商户秘钥,微信公众平台的appID和secret,


下载微信dome https://pay.weixin.qq.com/wiki/doc/api/native.php?chapter=11_1


public function pc_pay(Request $re){
        header("Content-type:text/html;charset=utf-8");

        require VENDOR_PATH.'/wxpay/lib/WxPay.Api.php'; //引入微信支付
        $input = new \WxPayunifiedOrder();//统一下单
        $config = new \WxPayConfig();//配置参数
        //$paymoney = input('post.paymoney'); //支付金额
        $id=$re->param('id');
        $order=Db('order')->where('order_num',$id)->find();
        $out_trade_no = $order['order_num']; //商户订单号(自定义)
        $goods_name = '扫码支付'.$order['amount'].'元'; //商品名称(自定义)
        $input->SetBody($goods_name);
        $input->SetAttach($goods_name);
        $input->SetOut_trade_no($out_trade_no);
        $input->SetTotal_fee($order['amount']*100);//金额乘以100
        $input->SetTime_start(date("YmdHis"));
        $input->SetTime_expire(date("YmdHis", time() + 600));
        $input->SetGoods_tag("test");
        $input->SetNotify_url("http://tongchengh.qinfenniao.com/index/Wxpay/wxpaynotify"); //回调地址
        $input->SetTrade_type("NATIVE");
        $input->SetProduct_id($order['id']);//商品id
        $result = \WxPayApi::unifiedOrder($config, $input);
//        var_dump($result);die();
        if($result['result_code']=='SUCCESS' && $result['return_code']=='SUCCESS') {
            $url = $result["code_url"];
            return json(['code'=>1,'url'=>$url]);
        }else{
            $this->error('参数错误');
        }
        return view();
    }

这正常的微信支付一样,不过这里请求返回的是一个可以生成的二维码的参数值

这里需要自己去生成二维码

把返回的字符串截取

public function erma(){
    $id = $this->request->param('id');

    $url = urldecode($id);

    if(substr($url, 0, 6) == "weixin"){
        $a =  userimg($url);
        if($a){
            return json(['code'=>1,'msg'=>'成功','img'=>$a]);
        }else{
            return json(['code'=>0,'msg'=>'失败']);
        }
    }else{
        header('HTTP/1.1 404 Not Found');
    }
}

然后生成二维码

这样就进行支付了

0

0条评论

别默默看啦~登录/注册一起参与讨论吧~

热门标签

教腾豪
微信扫一扫立即咨询
账号登录|扫码登录

立即注册 |忘记密码?

欢迎注册

已有账号马上登录

重置密码

扫码绑定微信
微信扫一扫

绑定手机号

分享到-微信

举报

  • 举报类型:

  • 举报描述:

您好,当前积分不足。

在线客服
拨打电话
17330196230 13230981129
顶部