thinkphp 使用 easypay 和 easywechat

easypay 是3.x

easywechat 是6.x

引入:

php 复制代码
use Yansongda\Pay\Pay;//easypay

use EasyWeChat\MiniApp\Application as MiniApp;//easywechat
use EasyWeChat\Pay\Application as Payapp;//easywechat
php 复制代码
    
    public function suborder()
    {
        $order = [
            'out_trade_no' => time().mt_rand(10000,99999),
            'description' => '商品购买',
            'amount' => [
                'total' => 1,
                'currency' => 'CNY',
            ],
            'payer' => [
                'openid' => input('openid'),
            ]
        ];
        $result = Pay::wechat(PayLib::getConfig())->mini($order);
        $this->success('',$result);
        var_dump($result);die;
        $result = Pay::wechat()->mini($order);
    }
    
    
public function suborder_easywechat()
    {
          $config = [
    'app_id' => 'wx6ce683f16052b51b',
    'secret' => 'b5d5bcb937101b7d36a99425ebd044fb',
      'mch_id' => 1631350029,

    // 商户证书
    'private_key' =>  '/www/wwwroot/h5dev.qfhl.com/cert/apiclient_key.pem',
    'certificate' =>   '/www/wwwroot/h5dev.qfhl.com/cert/apiclient_cert.pem',

     // v3 API 秘钥
    'secret_key' => '876FA8733AF9E2E6FE2015C0113B7322',
    ];
    $app = new Payapp($config);

        
     $response = $app->getClient()->postJson("v3/pay/transactions/jsapi", [
      "mchid" => "1631350029", // <---- 请修改为您的商户号
      "out_trade_no" => time().mt_rand(10000,99999),
      "appid" => "wx6ce683f16052b51b", // <---- 请修改为服务号的 appid
      "description" => "商品购买",
      "notify_url" => "https://crm.xiniuai.com/index.php/api/PayNotify/easy_wechat",
      "amount" => [
            "total" => 1,
            "currency" => "CNY"
        ],
        "payer" => [
            "openid" => input('openid') // <---- 请修改为服务号下单用户的 openid
        ]
    ]);
        // var_dump($response->getContent());die;
        $prepay=$response->toArray();
            $appId = 'wx6ce683f16052b51b';
        $signType = 'RSA'; // 默认RSA,v2要传MD5
        $config = $app->getUtils()->buildSdkConfig($prepay['prepay_id'], $appId, $signType); 
        // var_dump($config);die;
        //$config的timestamp小写了!!!!!
        $this->success('',$config);
        
    }
    
相关推荐
待什么青丝9 分钟前
【linux】驱动学习问题及解决方法
linux·数据库·学习
柿蒂16 分钟前
深入浅出Android系列之从ViewToBitmap延伸到View的绘制全过程
android
柿蒂19 分钟前
解决setText()触发requestLayout导致View位置频繁刷新的问题
android
天天爱吃肉821820 分钟前
《零基础读懂新能源汽车》——V2G/电池梯次利用/氢能源生态级技术拆解与商业预言
数据库·python·汽车·能源·创业创新
程序员小刘33 分钟前
HarmonyOS 5鸿蒙多端编译实战:从Android/iOS到HarmonyOS 5 的跨端迁移指南详
android·ios·华为·harmonyos
陌北v11 小时前
Android-Mod-Menu 使用教程
android
小陈phd1 小时前
langchain从入门到精通(七)——利用回调功能调试链应用 - 让过程更透明
android·java·langchain
skywalk81631 小时前
超强人工智能解决方案套件InfiniSynapse:精准的业务理解、对各种数据源进行全模态联合智能分析--部署安装@Ubuntu22.04 & @Docker
数据库·人工智能·python·docker·infini-synapse
纪伊路上盛名在2 小时前
jupyter内核崩溃
前端·数据库·jupyter·生物信息·基因组·k-mer
BAGAE2 小时前
使用 Flutter 在 Windows 平台开发 Android 应用
android·大数据·数据结构·windows·python·flutter