Search by

851732372 / think-wechat

851732372

ThinkPHP 微信开发工具包(小程序、支付、公众号)

Package info

github.com/851732372/think-wechat

pkg:composer/851732372/think-wechat

Statistics

Installs: 1

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

dev-main 2026-09-24 09:25 UTC

This package is auto-updated.

Last update: 2026-09-24 09:30:42 UTC


README

ThinkPHP 8 微信开发工具包,支持微信小程序、微信支付、公众号等功能。

安装

composer require 851732372/think-wechat

配置

# 发布配置文件
php think vendor:publish --package 851732372/think-wechat

环境变量配置

# .env

# 微信小程序
WECHAT_MINI_APPID=wx1234567890abcdef
WECHAT_MINI_SECRET=your-secret

# 微信支付
WECHAT_PAY_MCHID=1234567890
WECHAT_PAY_KEY=your-payment-key
WECHAT_PAY_APPID=wx1234567890abcdef
WECHAT_PAY_CERT=/path/to/cert.pem
WECHAT_PAY_CERT_KEY=/path/to/key.pem
WECHAT_PAY_NOTIFY=https://your-domain.com/api/notify

# 微信公众号
WECHAT_OFFICIAL_APPID=wx1234567890abcdef
WECHAT_OFFICIAL_SECRET=your-secret
WECHAT_OFFICIAL_TOKEN=your-token
WECHAT_OFFICIAL_AES_KEY=your-aes-key

使用

基础用法

use Ginger\ThinkWeChat\WeChat;

// 从配置文件加载
$wechat = new WeChat(config('wechat'));

// 或手动配置
$wechat = new WeChat([
    'miniprogram' => [
        'appid' => 'wx123...',
        'secret' => 'secret...',
    ],
    'payment' => [
        'mch_id' => '123456',
        'key' => 'key...',
        'appid' => 'wx123...',
    ],
]);

微信小程序

// 获取实例
$miniProgram = $wechat->miniProgram();

// code 换取 openid
$result = $miniProgram->code2Session('wx-code');
// 返回:['success' => true, 'data' => ['openid' => '...', 'session_key' => '...']]

// 解密手机号
$result = $miniProgram->decryptPhone('code', 'encryptedData', 'iv');
// 返回:['success' => true, 'data' => ['phone' => '13800138000', 'openid' => '...']]

// 获取小程序码
$result = $miniProgram->getUnlimitedQRCode('scene=123', ['page' => 'pages/index']);

// 发送订阅消息
$miniProgram->sendSubscribeMessage('openid', 'template_id', [
    'name1' => ['value' => '商品名称'],
    'amount2' => ['value' => '99.99元'],
]);

微信支付

// 获取实例
$payment = $wechat->payment();

// 统一下单
$result = $payment->unifiedOrder(
    'openid',
    'ORDER_20240101_001',
    9900, // 金额:分
    '商品描述'
);
// 返回:['success' => true, 'data' => ['prepay_id' => '...', 'pay_params' => [...]]]

// 查询订单
$payment->queryOrder('ORDER_20240101_001');

// 关闭订单
$payment->closeOrder('ORDER_20240101_001');

// 验证支付回调
$payment->verifyNotify($notifyData);

微信公众号

// 获取实例
$official = $wechat->officialAccount();

// 获取网页授权 URL
$url = $official->getOauthUrl('https://your-domain.com/callback', 'snsapi_userinfo');

// 通过 code 获取用户信息
$result = $official->getUserInfoByCode('code');

// 发送模板消息
$official->sendTemplateMessage('openid', 'template_id', 'url', [
    'keyword1' => ['value' => '内容1', 'color' => '#173177'],
    'keyword2' => ['value' => '内容2'],
]);

// 发送客服消息
$official->sendCustomMessage('openid', 'text', ['content' => '您好']);

// 获取用户信息
$official->getUserInfo('openid');

License

MIT