ThinkPHP 文件命名须严格遵循大小写敏感与风格规范:类文件用 PascalCase(如 UserController.php),非类文件全小写下划线(如 database.php),数据表与字段名小写加下划线(如 think_user),常量/配置/环境变量等均全大写或全小写加下划线。

ThinkPHP 文件命名必须严格匹配框架的自动加载机制和跨平台运行要求,否则在 Linux 环境下直接报错,Windows 下开启调试模式也会校验失败。
类文件(Controller、Model、Middleware 等)必须驼峰+首字母大写
类文件名要和类名完全一致(含大小写),且采用 PascalCase 风格,后缀为 .php(TP5/6/8 已不再强制要求 .class.php):
-
正确:UserController.php → 类名
UserController;UserModel.php → 类名UserModel;CheckAuth.php → 类名CheckAuth - 错误:usercontroller.php、user_model.php、Userlogin.php(大小写不一致或非标准驼峰)
- 命名空间路径必须等于文件系统路径,例如
app\index\controller\User必须对应app/index/controller/User.php
非类文件统一小写+下划线
配置文件、函数库、模板、路由定义等非类文件,全部使用小写字母加下划线命名:
- 配置文件:database.php、route.php、middleware.php
- 函数文件:common.php、helper.php
- 模板文件:index.html、user_list.html(默认后缀为 .html,可配置)
- 不要出现 userList.php、Config.php、Index.tpl 等混合风格
数据表与字段名必须小写+下划线
数据库层面的命名虽不属“PHP 文件”,但直接影响模型映射和代码健壮性:
立即学习“PHP免费学习笔记(深入)”;
- 表名示例:
think_user、user_group(不能是User或userGroup) - 字段名示例:
user_name、create_time(禁止_status或userName) - 模型类名由表名转换而来:表
user_group→ 模型类UserGroupModel
常量、配置项、语言变量区分大小写规则
这些不是文件名,但在项目中高频出现,命名错位易引发逻辑异常:
-
常量(如
APP_PATH、HAS_ONE)→ 全大写 + 下划线 -
配置参数(如
url_route_on、log_level)→ 全小写 + 下划线 -
环境变量(如
APP_DEBUG、DB_HOST)→ 全大写 + 下划线 -
语言变量(如
USER_NOT_EXIST、_CLASS_NOT_EXIST_)→ 全大写 + 下划线,系统变量以下划线开头



















