用途:面向 ThinkPHP 项目后端开发,覆盖开发规范、REST API 实现、模型数据访问、JWT 认证与权限控制,适用于遵循 ThinkPHP 8.0 与 PSR-4 的项目。
技术栈:PHP 8.1+、ThinkPHP 8.x(MVC、内置 ORM)、MySQL 8.x(InnoDB)、Redis 7.x、firebase/php-jwt、Swagger UI(swagger.json)。
主要能力与约定:
- 目录结构:以官方目录为准,app/ 按业务模块(auth、system、codegen、file)划分,模块内含 controller/model/service/validate/enums;公共组件放 common/,第三方扩展放 extend/(jwt、redis、sse、http)。
- 命名规范:目录小写下划线,类名驼峰且与文件名一致,常量大写加下划线,配置参数小写下划线,数据表与字段小写下划线,方法驼峰首字母小写,全局函数小写下划线。
- RESTful API:分页 GET /api/v1/users/page、详情 GET /:id、新增 POST、更新 PUT、删除 DELETE /:id、批量删除 DELETE /batch、下拉 GET /options。
- 响应与异常:Result::success / page / failedWith 统一返回 code、msg、data,BaseController 提供 success、successPaginate,业务异常用 BusinessException 配 ResultCode,全局由 ExceptionHandle 处理 ValidateException 与兜底。
- 模型:BaseModel 开启自动时间戳与软删除,子模型声明 name、pk、hidden 与关联关系。
- 路由:Route::group 分组显式映射,认证接口允许跨域,其余挂 Auth 中间件。
- 认证:JwtService 用 HS256 签发与解析 token,Auth 中间件读取 Authorization Bearer 并注入 userId、username。
- 验证器:UserValidate 用 rule 与 scene 定义字段规则与场景。
使用方式:在开发 ThinkPHP 项目、编写 REST 接口、模型访问、JWT 认证与权限控制时参考该规范;具体安装或依赖引入命令暂未提供。
限制:资料未说明授权、价格、运行平台等信息,暂未提供。