# 项目结构
请遵循项目结构,会减少踩坑的几率。
>[danger] 特别提示src目录不要改名,如需改名还得修改框架各类配置。
~~~php
.
├── bin 启动会自动创建
│ └── cache
├── composer.json
├── composer.lock
├── resources 配置文件 yaml格式
│ ├── application-local.yml
│ └── application.yml
├── src 源码目录
│ ├── Application.php
│ ├── Controller
│ │ └── CUser.php
│ ├── Model
│ │ └── User.php
│ └── Service
│ └── UserService.php
├── start_server.php 启动脚本
├── tests 测试脚本
│ └── UserServiceTest.php
└── vendor 依赖
~~~
## resources
资源目录,主要存放配置文件。
~~~
define("ROOT_DIR",__DIR__); //项目根路径
define("RES_DIR", realpath(__DIR__.'/resources'));//项目配置文件路径
~~~
需要在启动文件中定义该常量。
## src
>[danger] 项目源码的存放地,强烈不建议改名
## tests
单元测试文件夹,通过
~~~
php start_server.php test
~~~
可以运行单元测试,基于PHPUnit。
## bin
启动后自动生成的文件夹,其中 cache 是项目缓存使用的目录,代码出现意外问题可先手动删除缓存尝试解决。
>[danger] 如果使用了文件缓存可通过添加 -c 参数自动清理,默认是内存缓存
```
php start_server.php start -c
```
- 前言
- 捐赠ESD项目
- 使用篇-通用
- 环境
- 安装
- 规范
- 压力测试
- 配置
- 如何设置YML配置
- server配置
- 端口配置
- 项目结构
- 事件派发
- 日志
- 注解
- DI容器
- 自定义进程
- 并发及协程池
- Console插件
- Scheduled插件
- Redis插件
- AOP插件
- Saber插件
- Mysql插件
- mysql事务
- Actuator插件
- Whoops插件
- Cache插件
- PHPUnit插件
- Security插件
- Session插件
- EasyRoute插件
- http路由
- ProcessRpc插件
- AutoReload插件
- AnnotationsScan插件
- Tracing-plugin插件
- MQTT插件
- Pack插件
- AMQP插件
- Validate插件
- Uid插件
- Topic插件
- Blade插件
- CsvReader插件
- hashed-wheel-timer-plugin插件
- 使用篇-HTTP
- 路由
- 静态文件
- 路由定义
- 修饰方法
- 路由分组
- 资源路由
- 端口作用域
- 异常处理
- 跨域请求
- 路由缓存
- 控制器
- 控制器初始化
- 前置操作
- 跳转和重定向
- 异常处理
- 请求
- 请求对象
- 请求信息
- request消息
- response消息
- stream消息
- url接口
- 验证器
- 内置验证器
- 内置过滤器
- 使用篇-WS
- 如何使用
- 路由
- 使用篇-TCP
- 插件篇-PluginSystem
- 微服务篇-ESDCloud
- CircuitBreaker插件
- SaberCloud插件
- 分布式链路追踪系统
- Consul插件