结构目录

'🎨框架目录

.
├── app                           应用目录
│   ├── controller                控制器目录
│   ├── model                     模型目录
│   ├── view                      视图目录
│   ├── middleware                中间件目录
│   │   └── StaticFile.php        自带静态文件中间件
│   ├── process                   自定义进程目录
│   │   ├── Http.php              Http进程
│   │   └── Monitor.php           监控进程
│   └── functions.php             业务自定义函数写到这个文件里
├── config                        配置目录
│   ├── app.php                   应用配置
│   ├── autoload.php              这里配置的文件会被自动加载
│   ├── bootstrap.php             进程启动时onWorkerStart时运行的回调配置
│   ├── container.php             容器配置
│   ├── dependence.php            容器依赖配置
│   ├── database.php              数据库配置
│   ├── exception.php             异常配置
│   ├── log.php                   日志配置
│   ├── middleware.php            中间件配置
│   ├── process.php               自定义进程配置
│   ├── redis.php                 redis配置
│   ├── route.php                 路由配置
│   ├── server.php                端口、进程数等服务器配置
│   ├── view.php                  视图配置
│   ├── static.php                静态文件开关及静态文件中间件配置
│   ├── translation.php           多语言配置
│   └── session.php               session配置
├── plugin                        插件开发目录(所有程序均在此开发)
├── public                        静态资源目录
├── runtime                       应用的运行时目录,需要可写权限
├── start.php                     服务启动文件
├── vendor                        composer安装的第三方类库目录
└── support                       类库适配(包括第三方类库)
    ├── Request.php               请求类
    ├── Response.php              响应类
    └── bootstrap.php             进程启动后初始化脚本

🏹插件目录

plugin/
└── foo
    ├── api                                            提供给其他插件的接口(非网络请求)
    ├── app                                            应用代码目录
    │   ├── controller                                 控制器目录
    │   │   └── IndexController.php                    默认控制器
    │   ├── event                                      插件事件目录(框架自动加载)
    │   ├── exception                                  插件异常接管类
    │   │   └── Handler.php                            插件默认异常(默认即可)
    │   ├── functions.php                              插件函数库
    │   ├── middleware                                 插件全局中间件
    │   ├── model                                      插件模型目录
    │   ├── service                                    业务代码目录
    │   └── view                                       插件视图目录
    │       └── index                                  对应Index控制器
    │           └── index.html                         默认视图
    ├── config                                         插件配置目录
    │   ├── app.php                                    插件核心配置
    │   ├── autoload.php                               加载其他php文件配置
    │   ├── container.php                              容器配置
    │   ├── exception.php                              插件异常配置类
    │   ├── log.php                                    插件日志类
    │   ├── menu.php                                    后台菜单
    │   ├── middleware.php                             插件中间件
    │   ├── process.php                                插件进程类
    │   ├── redis.php                                  redis配置
    │   ├── route.php                                  插件路由
    │   ├── static.php                                 静态文件配置
    │   ├── translation.php                            多语言
    │   └── view.php                                   视图模板配置
    │   └── xbcode.php                                   xbcode官方配置
    ├── public                                         静态资源(可外部访问)
    └── setting                                        插件业务配置目录

📂关于插件中的api目录

每个插件里有一个api目录,如果你的应用提供了一些内部接口给其它应用调用,需要将接口放在api目录。
注意,这里所说的接口是函数调用的接口,非网络调用的接口。
例如邮件插件在 plugin/email/api/Email.php 提供了一个Email::send()接口,用于给其它应用调用发邮件。
另外 plugin/email/api/Install.php 是自动生成的,用来让插件市场调用执行安装或卸载操作。