a simple wechat oauth for php

Maintainers

Package info

github.com/kyle-xiaoku/module-wechat-oauth

pkg:composer/module-wechat/oauth

Statistics

Installs: 9

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

1.0.5 2026-01-22 09:38 UTC

This package is auto-updated.

Last update: 2026-03-22 10:02:25 UTC


README

一个简单的微信授权工具

环境要求

支持的环境如下:

  • PHP >= 8.0

安装

推荐使用 PHP 包管理工具 Composer 安装 SDK:

composer require module-wechat/oauth

快速使用

以下代码示例向您展示了助手的调用方法:

<?php

require 'vendor/autoload.php';
use ModuleWechat\Common\WechatServer;

// 第一种 .env 中配置appid和secret
WECHAT_APPID=appid
WECHAT_SECRET=secret

$wechatServer = new WechatServer();

// 第二种 参数传递
$wechatServer = new WechatServer('appid','secret');

// 获取跳转授权url scope 默认 snsapi_base
$wechatServer->oauth->getAuthUrl('redirect_uri','scope');

// 获取授权access_token
$wechatServer->oauth->getOauthToken('code');
// 返回示例
{
  "access_token": "ACCESS_TOKEN",
  "expires_in": 7200,
  "refresh_token": "REFRESH_TOKEN",
  "openid": "OPENID",
  "unionid": "UNIONID",
  "is_snapshotuser": 1
}

// 获取用户信息
$wechatServer->oauth->getUserInfo('openid','access_token');
// 返回示例
{   
  "openid": "OPENID",
  "nickname": NICKNAME,
  "sex": 1,
  "province":"PROVINCE",
  "city":"CITY",
  "country":"COUNTRY",
  "headimgurl":"https://thirdwx.qlogo.cn/mmopen/g3MonUZtNHkdmzicIlibx6iaFqAc56vxLSUfpb6n5WKSYVY0ChQKkiaJSgQ1dZuTOgvLLrhJbERQQ4eMsv84eavHiaiceqxibJxCfHe/46",
  "privilege":[ "PRIVILEGE1" "PRIVILEGE2"     ],
  "unionid": "o6_bmasdasdsad6_2sgVt7hMZOPfL"
}

// 获取基础access_token
$wechatServer->getAccessToken();
// 返回示例
{
  "access_token": "ACCESS_TOKEN",
  "expires_in": 7200
}

// 获取jssdk的临时票据 ticket
$wechatServer->getTicket('access_token');
// 返回示例
{
  "ticket": "ticket",
  "expires_in": 7200,
  "errcode": "errcode",
  "errmsg": "errmsg"
}

// 获取jssdk的配置
$wechatServer->oauth->getJssdk('url','ticket');
// 返回示例
{
  "nonceStr": "nonceStr",
  "appId": "appId",
  "timestamp": "timestamp",
  "signature": "signature",
  "url": "url"
}