Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

easywechat for thinkphp support

License

NotificationsYou must be signed in to change notification settings

qiqizjl/think-wechat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FOSSA Status

微信SDK For ThinkPHP 5.1 基于overtrue/wechat

框架要求

ThinkPHP5.1(中间件要求支持ThinkPHP5.1.6+)

安装

composer require naixiaoxin/think-wechat

配置

  1. 修改配置文件修改项目根目录下config/wechat.php中对应的参数

  2. 每个模块基本都支持多账号,默认为 default。

使用

接受普通消息

新建一个Controller,我这边用的是Note

<?phpnamespaceapp\wechat\controller;usethink\Controller;class Noteextends Controller{publicfunctionindex()    {//    先初始化微信$app =app('wechat.official_account');$app->server->push(function($message){return'hello,world';        });$app->server->serve()->send();    }}

获得SDK实例

使用facade

useNaixiaoxin\ThinkWechat\Facade;$officialAccount = Facade::officialAccount();// 公众号$work = Facade::work();// 企业微信$payment = Facade::payment();// 微信支付$openPlatform = Facade::openPlatform();// 开放平台$miniProgram = Facade::miniProgram();// 小程序$openWork = Facade::openWork();// 企业微信第三方服务商$microMerchant = Facade::microMerchant();// 小微商户

以上均支持传入自定义账号:例如

$officialAccount = Facade::officialAccount('test');// 公众号

以上均支持传入自定义账号+配置(注:这里的config和配置文件中账号的格式相同):例如

$officialAccount = Facade::officialAccount('',$config);// 公众号

Oauth登录中间件(ThinkPHP5.1.6+)

使用中间件情况下,config的oauth.callback可以随便写~,反正是直接获取了当前URL

\think\facade\Route::rule('user','usere')->middleware(\Naixiaoxin\ThinkWechat\Middleware\OauthMiddleware::class);

上面的路由定义了 /user 是需要微信授权的,那么在这条路由的回调 或 控制器对应的方法里, 你就可以从 session('wechat_oauth_user_default') 拿到已经授权的用户信息了。

关于ThinkPHP5.1的中间件使用方法不在叙述,详情可以查看官方文档

中间件参数说明

由于ThinkPHP中间件只支持一个参数,所以以:做分割

支持传入account账号别名以及scope类型

若不传入account,会使用default账号

若不传入scope,会使用配置文件中的oauth.scope

支持一下两种方式

default:snsapi_basesnsapi_base

HOOK

你可以监听相应的事件,并对事件发生后执行相应的操作。

  • OAuth授权wechat_oauth
// 该事件有以下属性$params['user'];// 同 session('wechat_oauth_user_default') 一样$params['is_new'];// 是不是新的会话(第一次创建 session 时为 true)

更多 SDK 的具体使用请参考:https://easywechat.com

参考项目

License

MIT

FOSSA Status


[8]ページ先頭

©2009-2025 Movatter.jp