ThinkPHP
项目介绍
youlai-think 是 vue3-element-admin 的 PHP 后端实现,基于 ThinkPHP 8 + PHP 8,采用 RBAC 权限模型,集成 JWT / Redis,用于企业级前后端分离权限管理系统。
一句话定位:如果你需要一个“轻量高效”的 PHP 权限中后台后端(认证、鉴权、数据权限、代码生成等能力齐全),选它。
核心能力
- RBAC 权限模型(用户/角色/菜单/按钮权限)
- 登录认证与会话管理(JWT / Redis Token)
- 接口鉴权(权限点校验 + 前后端联动)
- 数据权限(按角色数据范围进行 SQL 自动注入过滤)
- 代码生成(从表结构快速生成 CRUD 骨架)
- 文件上传(本地/MinIO/阿里云 OSS)
- 定时任务(可选)
- 实时通信(SSE)
技术栈
以仓库配置为准(composer.json / .env):
| 分类 | 技术选型 | 说明 |
|---|---|---|
| 运行时 | PHP 8.0+ | 推荐使用 8.1+ |
| Web 框架 | ThinkPHP 8 | 轻量高效 PHP 框架 |
| 数据访问 | ThinkORM | ThinkPHP 内置 ORM |
| 数据库 | MySQL 5.7 ~ 8.x | 推荐 8.x |
| 缓存 | Redis 7.x | 会话与缓存 |
| 认证 | JWT | 无状态认证 |
| 接口文档 | Swagger | /swagger |
目录结构
核心目录一览(详细结构见 快速开始):
text
youlai-think/
app/ # 应用核心目录
auth/ # 认证模块(登录/登出/刷新Token)
controller/ # 认证控制器
service/ # 认证服务
system/ # 系统模块(用户/角色/菜单/部门/字典/通知/日志)
controller/ # 控制器
service/ # 业务服务
model/ # 数据模型
annotation/ # 注解定义
enums/ # 枚举定义
validate/ # 验证器
codegen/ # 代码生成模块
file/ # 文件上传模块
common/ # 公共模块
constants/ # 常量定义
enums/ # 枚举定义
exception/ # 异常类
middleware/ # 中间件(Auth/Perm/DataScope/RateLimit)
model/ # 基础模型
traits/ # Trait 复用
util/ # 工具类
validate/ # 验证器
web/ # Web 响应/基类
controller/ # 控制器基类
extend/ # 扩展类库
jwt/ # JWT Token 管理
sse/ # SSE 实时通信
redis/ # Redis 客户端
http/ # HTTP 工具
config/ # 配置文件
route/ # 路由定义
sql/ # 数据库脚本必需服务
- MySQL
- Redis
