文章目录
- 本项目结构将从下面几个结构来介绍,如有错误希望更正 整体结构 配置文件结构 路由文件结构 代码目录结构 Bundle目录结构
- ├── app // 我们将默认的访问路径由 app 换成了 src │ ├── Command // 通用脚本 │ ├── Constants // 定义枚举相关 │ ├── Controller // 访问控制器 │ ├── Exception // 异常处理相关 │ ├── Listener // 监听器相关 │ ├── Model // 相关数据库 model │ └── helpers.php // 常用方法 ├── bin // 启动 Hyperf 服务文件 ├── config // 配置文件 请看下面 `配置文件结构` 文档 ├── doc // 文档 ├── migrations // 生成的迁移文件 ├── routes // 路由文件 请看下面 `路由文件结构` 文档 │ ├── admin // 后台路由 │ ├── front // 前台路由 ├── runtime // 运行程序相关文件 │ ├── container // 缓存代理类 │ ├── logs // 项目运行日志 │ └── hyperf.pid // master 进程的 PID ├── src // 项目主要代码目录 请看下面 `代码目录结构` 文档 ├── storage // 存储文件夹 │ ├── download // 下载文件存储 ├── test // 测试用例相关 ├── vendor // composer 加载的 vendor 包 ├── .env // 配置文件,`cp .env.example .env` ,复制 env 文件 ├── .env.example // 配置例子文件,记得相关配置增加注释 ├── .env.develop // 测试环境配置 ├── .env.prd // 生产环境配置 ├── .gitignore ├── .php_cs // 格式化代码风格配置文件,注意不要动,`composer cs-fix` 格式化代码 ├── composer.json // 包管理文件 └── phpunit.xml // 测试用例配置文件
- config ├── autoload // 此文件夹内的配置文件会被配置组件自己加载,并以文件夹内的文件名作为第一个键值 │ ├── amqp.php // 用于管理 AMQP 组件 │ ├── annotations.php // 用于管理注解 │ ├── aspects.php // 用于管理 AOP 切面 │ ├── async_queue.php // 用于管理基于 Redis 实现的简易队列服务 │ ├── cache.php // 用于管理缓存组件 │ ├── commands.php // 用于管理自定义命令 │ ├── crontab.php // 定时任务 │ ├── consul.php // 用于管理 Consul 客户端 │ ├── databases.php // 用于管理数据库客户端 │ ├── dependencies.php // 用于管理 DI 的依赖关系和类对应关系 │ ├── devtool.php // 用于管理开发者工具 │ ├── exceptions.php // 用于管理异常处理器 │ ├── file.php // 文件系统管理文件 │ ├── listeners.php // 用于管理事件监听者 │ ├── logger.php // 用于管理日志 │ ├── middlewares.php // 用于管理中间件 │ ├── opentracing.php // 用于管理调用链追踪 │ ├── processes.php // 用于管理自定义进程 │ ├── redis.php // 用于管理 Redis 客户端 │ ├── server.php // 用于管理 Server 服务 │ └── translation.php // 多语言版本 ├── config.php // 用于管理用户或框架的配置,如配置相对独立亦可放于 autoload 文件夹内 ├── container.php // 负责容器的初始化,作为一个配置文件运行并最终返回一个 PsrContainerContainerInterface 对象 └── routes.php // 用于管理路由
- routes ├── admin // 后台路由 │ ├── user.php // 用户接口路由 ├── front // 前台 │ ├── home.php // 前台对外公共路由 │ ├── user.php // 用户路由
- src ├── Rpc // Rpc相关 ├── UserBundle // 用户相关 ├── HomeBundle // 前台对外公共相关
- UserBundle ├── Constants // 定义枚举相关 ├── Model // 模型 ├── Http // 控制器相关 │ ├── Controllers // 控制器相关 │ │ ├── Admin // 后台接口控制器相关 │ │ ├── Front // 小程序接口控制器相关 ├── Interfaces // 接口相关 ├── Middleware // 中间件相关 ├── Process // 异步消费进程 ├── Services // 服务相关,逻辑处理 ├── Tests // 测试相关 │ ├── Admin // 后台测试用例 │ ├── Front // 前台测试用例 │ └── Services // 服务测试用例 └── Traits // 特性相关
- 在composer.json 中按需添加"autoload": { "psr-4": { "": "src/", } },
本项目结构将从下面几个结构来介绍,如有错误希望更正
整体结构
- 配置文件结构
- 路由文件结构
- 代码目录结构
- Bundle目录结构
本项目结构将从下面几个结构来介绍,如有错误希望更正
整体结构
├── app // 我们将默认的访问路径由 app 换成了 src
│ ├── Command // 通用脚本
│ ├── Constants // 定义枚举相关
│ ├── Controller // 访问控制器
│ ├── Exception // 异常处理相关
│ ├── Listener // 监听器相关
│ ├── Model // 相关数据库 model
│ └── helpers.php // 常用方法
├── bin // 启动 Hyperf 服务文件
├── config // 配置文件 请看下面 `配置文件结构` 文档
├── doc // 文档
├── migrations // 生成的迁移文件
├── routes // 路由文件 请看下面 `路由文件结构` 文档
│ ├── admin // 后台路由
│ ├── front // 前台路由
├── runtime // 运行程序相关文件
│ ├── container // 缓存代理类
│ ├── logs // 项目运行日志
│ └── hyperf.pid // master 进程的 PID
├── src // 项目主要代码目录 请看下面 `代码目录结构` 文档
├── storage // 存储文件夹
│ ├── download // 下载文件存储
├── test // 测试用例相关
├── vendor // composer 加载的 vendor 包
├── .env // 配置文件,`cp .env.example .env` ,复制 env 文件
├── .env.example // 配置例子文件,记得相关配置增加注释
├── .env.develop // 测试环境配置
├── .env.prd // 生产环境配置
├── .gitignore
├── .php_cs // 格式化代码风格配置文件,注意不要动,`composer cs-fix` 格式化代码
├── composer.json // 包管理文件
└── phpunit.xml // 测试用例配置文件
├── app // 我们将默认的访问路径由 app 换成了 src
│ ├── Command // 通用脚本
│ ├── Constants // 定义枚举相关
│ ├── Controller // 访问控制器
│ ├── Exception // 异常处理相关
│ ├── Listener // 监听器相关
│ ├── Model // 相关数据库 model
│ └── helpers.php // 常用方法
├── bin // 启动 Hyperf 服务文件
├── config // 配置文件 请看下面 `配置文件结构` 文档
├── doc // 文档
├── migrations // 生成的迁移文件
├── routes // 路由文件 请看下面 `路由文件结构` 文档
│ ├── admin // 后台路由
│ ├── front // 前台路由
├── runtime // 运行程序相关文件
│ ├── container // 缓存代理类
│ ├── logs // 项目运行日志
│ └── hyperf.pid // master 进程的 PID
├── src // 项目主要代码目录 请看下面 `代码目录结构` 文档
├── storage // 存储文件夹
│ ├── download // 下载文件存储
├── test // 测试用例相关
├── vendor // composer 加载的 vendor 包
├── .env // 配置文件,`cp .env.example .env` ,复制 env 文件
├── .env.example // 配置例子文件,记得相关配置增加注释
├── .env.develop // 测试环境配置
├── .env.prd // 生产环境配置
├── .gitignore
├── .php_cs // 格式化代码风格配置文件,注意不要动,`composer cs-fix` 格式化代码
├── composer.json // 包管理文件
└── phpunit.xml // 测试用例配置文件
config
├── autoload // 此文件夹内的配置文件会被配置组件自己加载,并以文件夹内的文件名作为第一个键值
│ ├── amqp.php // 用于管理 AMQP 组件
│ ├── annotations.php // 用于管理注解
│ ├── aspects.php // 用于管理 AOP 切面
│ ├── async_queue.php // 用于管理基于 Redis 实现的简易队列服务
│ ├── cache.php // 用于管理缓存组件
│ ├── commands.php // 用于管理自定义命令
│ ├── crontab.php // 定时任务
│ ├── consul.php // 用于管理 Consul 客户端
│ ├── databases.php // 用于管理数据库客户端
│ ├── dependencies.php // 用于管理 DI 的依赖关系和类对应关系
│ ├── devtool.php // 用于管理开发者工具
│ ├── exceptions.php // 用于管理异常处理器
│ ├── file.php // 文件系统管理文件
│ ├── listeners.php // 用于管理事件监听者
│ ├── logger.php // 用于管理日志
│ ├── middlewares.php // 用于管理中间件
│ ├── opentracing.php // 用于管理调用链追踪
│ ├── processes.php // 用于管理自定义进程
│ ├── redis.php // 用于管理 Redis 客户端
│ ├── server.php // 用于管理 Server 服务
│ └── translation.php // 多语言版本
├── config.php // 用于管理用户或框架的配置,如配置相对独立亦可放于 autoload 文件夹内
├── container.php // 负责容器的初始化,作为一个配置文件运行并最终返回一个 PsrContainerContainerInterface 对象
└── routes.php // 用于管理路由
config
├── autoload // 此文件夹内的配置文件会被配置组件自己加载,并以文件夹内的文件名作为第一个键值
│ ├── amqp.php // 用于管理 AMQP 组件
│ ├── annotations.php // 用于管理注解
│ ├── aspects.php // 用于管理 AOP 切面
│ ├── async_queue.php // 用于管理基于 Redis 实现的简易队列服务
│ ├── cache.php // 用于管理缓存组件
│ ├── commands.php // 用于管理自定义命令
│ ├── crontab.php // 定时任务
│ ├── consul.php // 用于管理 Consul 客户端
│ ├── databases.php // 用于管理数据库客户端
│ ├── dependencies.php // 用于管理 DI 的依赖关系和类对应关系
│ ├── devtool.php // 用于管理开发者工具
│ ├── exceptions.php // 用于管理异常处理器
│ ├── file.php // 文件系统管理文件
│ ├── listeners.php // 用于管理事件监听者
│ ├── logger.php // 用于管理日志
│ ├── middlewares.php // 用于管理中间件
│ ├── opentracing.php // 用于管理调用链追踪
│ ├── processes.php // 用于管理自定义进程
│ ├── redis.php // 用于管理 Redis 客户端
│ ├── server.php // 用于管理 Server 服务
│ └── translation.php // 多语言版本
├── config.php // 用于管理用户或框架的配置,如配置相对独立亦可放于 autoload 文件夹内
├── container.php // 负责容器的初始化,作为一个配置文件运行并最终返回一个 PsrContainerContainerInterface 对象
└── routes.php // 用于管理路由
routes
├── admin // 后台路由
│ ├── user.php // 用户接口路由
├── front // 前台
│ ├── home.php // 前台对外公共路由
│ ├── user.php // 用户路由
routes
├── admin // 后台路由
│ ├── user.php // 用户接口路由
├── front // 前台
│ ├── home.php // 前台对外公共路由
│ ├── user.php // 用户路由
src
├── Rpc // Rpc相关
├── UserBundle // 用户相关
├── HomeBundle // 前台对外公共相关
src
├── Rpc // Rpc相关
├── UserBundle // 用户相关
├── HomeBundle // 前台对外公共相关
UserBundle
├── Constants // 定义枚举相关
├── Model // 模型
├── Http // 控制器相关
│ ├── Controllers // 控制器相关
│ │ ├── Admin // 后台接口控制器相关
│ │ ├── Front // 小程序接口控制器相关
├── Interfaces // 接口相关
├── Middleware // 中间件相关
├── Process // 异步消费进程
├── Services // 服务相关,逻辑处理
├── Tests // 测试相关
│ ├── Admin // 后台测试用例
│ ├── Front // 前台测试用例
│ └── Services // 服务测试用例
└── Traits // 特性相关
UserBundle
├── Constants // 定义枚举相关
├── Model // 模型
├── Http // 控制器相关
│ ├── Controllers // 控制器相关
│ │ ├── Admin // 后台接口控制器相关
│ │ ├── Front // 小程序接口控制器相关
├── Interfaces // 接口相关
├── Middleware // 中间件相关
├── Process // 异步消费进程
├── Services // 服务相关,逻辑处理
├── Tests // 测试相关
│ ├── Admin // 后台测试用例
│ ├── Front // 前台测试用例
│ └── Services // 服务测试用例
└── Traits // 特性相关
- 在composer.json 中按需添加
"autoload": {
"psr-4": {
"": "src/",
}
},
"autoload": {
"psr-4": {
"": "src/",
}
},


