larvael5.4中的微信扫码支付SDK


1.首先要在微信公众平台下载SDK文件
                放入laravel根目录下 (与app目录同级)

2.重点来了   一定要在public目录下的index.php文件中定义一个路径常量
define("PAY_PATH",__DIR__."/../pay");  //支付常量路径
定义好就可以用了

3.创建控制器在控制器中调用微信的支付接口我这里使用的是模式二
<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

require_once PAY_PATH.'\wxpay\lib\WxPay.Api.php';//关键就在这三个文件的引入
require_once PAY_PATH.'\wxpay\example\log.php';
require_once PAY_PATH.'\wxpay\example\WxPay.NativePay.php';

class PaymentController extends Controller
{
    public function index()
    {
        $notify = new \NativePay();
        $order_id = rand(10000,99999);

        $input = new \WxPayUnifiedOrder();
        $input->SetBody("text");//设置商品或支付的简要描述
        $input->SetAttach("test");
        $input->SetOut_trade_no($order_id);//商户系统内部的订单号
        $input->SetTotal_fee("1");//金额,单位分
        $input->SetTime_start(date("YmdHis"));//订单生成时间
        $input->SetTime_expire(date("YmdHis", time() + 600));//订单生效时间
        $input->SetGoods_tag("test");//商品标记
        $input->SetNotify_url("http://www.book.com/huidiao");//回掉地址
        $input->SetTrade_type("NATIVE");//扫码支付标识
        $input->SetProduct_id("123456789");//商品订单号
        $result = $notify->GetPayUrl($input);//生成UPL
        $url2 = $result["code_url"];
        return view('payment',compact('url2'));
   }
}

4.创建支付模板payment.blade.php

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
<div style="margin-left: 10px;color:#556B2F;font-size:30px;font-weight: bolder;">扫描支付模式二</div><br/>
<img alt="模式二扫码支付" src="http://paysdk.weixin.qq.com/example/qrcode.php?data=<?php echo urlencode($url2);?>" style="width:150px;height:150px;"/>
</body>
</html>
测试成功


阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭