🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
自从 thinkphp 官方更新5.1,加入了**容器**和**门面**等新特性之后,对开发者更加友好了。我也看大概浏览了文档,比 5.0 更加友好了。官方也一直迎合着开发者的需要,加入了这一系列的实现。下面开发包的时候我会提到为什么比 5.0 友好,两者做一些我知道的不同之处。注意以下是**本地包**,开发完之后会上传到 Packagist。以开发一个rbac权限包为例子。地址:[https://github.com/yanwenwu/thinkphp-permission]() ### 创建Composer包 ``` 在 vendor 目录下,创建 think-permission 目录,在该目录创建src目录,config 目录,然后需要一个 command 目录 |-think-permission |--src |--model |--command |--config |--database ``` ### 初始化 ``` composer init // 会出现一系列提示,按要求提写就可以了, 结果就是这样的 { "name": "wyw/think-permission", "description": "rbac", "type": "library", "require": { "topthink/think-migration": "lastest" }, "license": "MIT", "authors": [ { "name": "yanwenwu", "email": "82664165@qq.com" } ] } ``` ### 自动加载 回到项目根目录下,修改 **composer.json**, 修改以下代码。 ``` "autoload": { "psr-4": { "app\\": "application", // 下面这是添加的 "think\\permissions\\":"vendor/think-permission/src/" } }, ``` ### 更新 ``` composer update ``` 这样可以完成包的自动加载了。