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);
        
    }
    
相关推荐
白帽小丑8 小时前
# 一次 MySQL DELETE 误操作的数据恢复尝试实录
数据库·mysql
Quincy_Freak10 小时前
信创内网数据规范实践:银河麒麟下SQLite本地数据安全管理方案
数据库·sqlite·arm·数据库管理·大数据分析·银河麒麟·aarch64
2601_9626838912 小时前
治理遗留系统中的“生肉 SQL”:一次用多模型协作优化慢查询的实战复盘
数据库·人工智能·sql
机智的张尼玛12 小时前
我基于 Kotlin Multiplatform 实现了一套跨平台的弱网离线同步引擎
android·开源·kotlin
酱学编程12 小时前
【从零到一实现一个 AI Agent 框架 · 第四篇】04. 任务规划:拆解复杂目标 -
服务器·网络·数据库·人工智能
shushangyun_14 小时前
2026智能采购商城系统选型指南:如何引领企业数字化采购升级
java·大数据·数据库·人工智能·机器学习
华山令狐虫14 小时前
DBAPI AI 写 SQL:支持动态 SQL 与参数占位符,自然语言一键生成
数据库·人工智能·sql·dbapi
IvorySQL15 小时前
PG 技术日报|2026-07-04
数据库·人工智能·postgresql·开源
安卓修改大师15 小时前
安卓修改大师反编译引擎Apktool深度解析:版本选择、参数说明与实战技巧
android
error:(15 小时前
【系统与实战双精通】VS Code 调试 ROS2 Python 节点与 Launch 系统指南
android·java·python