[TOC]
# (一)命名规范
命名以标准计算机英文为蓝本,杜绝一切拼音、或拼音英文混杂的命名方式;
`ThinkPHP5`遵循`PSR-2`命名规范和`PSR-4`自动加载规范,并且注意如下规范:
详细请看流年总结的《PSR编码规范》,网址: https://www.kancloud.cn/thinkphp/php-fig-psr/3139 ,请自行参考!
# (二)目录和文件
目录使用小写+下划线;
类库、函数文件统一以`.php为`后缀;
类的文件名均以命名空间定义,并且命名空间的路径和类库文件所在路径一致;
类文件采用驼峰法命名(首字母大写),其它文件采用小写+下划线命名;
类名和类文件名保持一致,统一采用驼峰法命名(首字母大写);
# (三)函数和类、属性命名
类的命名采用驼峰法(首字母大写),例如 `User`、`UserType`,默认不需要添加后缀,例如`UserController`应该直接命名为`User`(注:`TMC`项目目前采用`UserController`);
函数的命名使用小写字母和下划线(小写字母开头)的方式,例如 `get_client_ip`;
方法的命名使用驼峰法(首字母小写),例如 `getUserName`;
属性的命名使用驼峰法(首字母小写),例如 `tableName`、`instance`;
以双下划线`__`打头的函数或方法作为魔术方法,例如 `__call` 和 `__autoload`;
# (四)变量命名
1. 变量、函数名一律为小写格式;变量与函数命名时一切使用单数形式。如果需要表达“多”的概念,可以使用 `$goodsList` 等数量词
2. 全局变量应该带有前缀 `g` 。如:`global $gTest`。
3. 静态变量应该带有前缀 `s` 。如:`state $sStatus = 1`;
# (五)常量和配置
常量以大写字母和下划线命名,例如 `APP_PATH`和 `THINK_PATH`;
配置参数以小写字母和下划线命名,例如 `url_route_on` 和`url_convert`;
# (六)数据表和字段
数据表和字段采用小写加下划线方式命名,并注意字段名不要以下划线开头,例如 `think_user` 表和 `user_name`字段,不建议使用驼峰和中文作为数据表字段命名。
# (七)应用类库命名空间规范
应用类库的根命名空间统一为`app`(不建议更改,可以设置`app_namespace`配置参数更改,V5.0.8版本开始使用`APP_NAMESPACE`常量定义);
例如:`app\index\controller\Index`和`app\index\model\User`。