概念:
EasyWeChat是一个基于微信公众号和小程序的PHP SDK,它提供了简单易用的API接口,方便开发者快速开发和集成微信公众号和小程序的功能。EasyWeChat支持包括微信授权、消息推送、菜单管理、客服消息、素材管理、用户管理等在内的丰富功能,同时也支持开发者自定义扩展。EasyWeChat也提供了良好的文档和示例代码,方便开发者参考和使用。
先说一下为什么不用 EasyWeChat6.x ,而使用EasyWeChat5.x。
从6.x版本开始EasyWeChat官方就开始不再为开发者封装微信接口业务了
具体原因:
1.微信接口换的太频繁,无力做到及时响应更换
2.封装好的业务逻辑有点麻烦,如果要改动会很不利,对于刚开始使用EasyWeChat的人来说增加了学习成本(要开发者对整体微信开发流程有个大致了解,起码要能看得懂微信文档,但微信文档有多费劲相信看到这篇文章的你心中已有自己的判断了...)
3.支持开发者对某个模块的自定义
更多详细内容请移步 EasyWeChat6.x版本说明
EasyWeChat5.x的安装环境要求:
先安装thinkphp6
composer create-project topthink/think tp
安装好后切换至与app同级目录,安装thinkphp6的多应用
composer require topthink/admin
接着安装thinkphp6的视图
composer require topthink/think-view
最后安装EasyWeChat5.x
composer require overtrue/wechat:~5.0 -vvv
安装过程中可能会遇到
1. cli模式下php版本不对的问题,如何切换请看下面:
windows:windows下切换PHP-cli版本
linux:Linux如何切换php 版本
2. 缺少扩展问题
由于笔者是宝塔面板安装,所以只遇到了fileinfo扩展没安装(宝塔点击安装即可);puten、pcntl_signal、proc_open等函数被禁用导致的composer无法下载问题,具体解决办法请看:linux宝塔面板安装composer的方法;其余面板,例如appnode请自行排查。
最后在thinkphp6下创建一个控制器,放置以下代码,展示正常就说明thinkphp6+EasyWeChat可以正常使用啦;建议将$config放置在config文件夹下单独创建一个配置文件,哪里需要就在初始构造方法中调用即可
<?php
use EasyWeChat\Factory;
$config = [
'app_id' => 'wx3cf0f39249exxxxx',
'secret' => 'f1c242f4f28f735d4687abbxxxxxxxxx',
// 指定 API 调用返回结果的类型:array(default)/collection/object/raw/自定义类名
'response_type' => 'array',
//...
];
$app = Factory::officialAccount($config);
$response = $app->server->serve();
return $response;
展示效果如下: