命名规范

目录和文件

  • 类库、函数文件统一以.php 为后缀。
  • 的文件名均以命名空间定义,并且命名空间的路径和类库文件所在路径一致。
  • (包含接口和 Trait)文件采用大驼峰法命名MyFile.php,其它文件采用小写+下划线名my_file.ini
  • 类名(包括接口和 Trait)和文件名保持一致,统一采用大驼峰法命名(首字母大写)MyFile

类和接口命名

  • 类的的命名使用大驼峰法(首字母大写),例如:Cards、Index
  • 方法的命名使用m+前缀+小驼峰法(首字母小写),例如: mStringGetIP
  • 属性的命名使用attr+前缀+大驼峰法(首字母小写),例如:attrGReqTime、attrGReqIp
  • 特例:以双下划线__打头的函数或方法作为魔术方法,例如: __call__autoload

变量和函数命名

  • 变量的命名使用小驼峰前缀+下划线_ +大驼峰简意(首字母小写),例如:lDef_Result、tDef_AdminListMax
  • 函数的命名使用f+前缀+大驼峰简意(首字母小写),例如:fArrayGetChartData

常量和配置

  • 常量以大写字母和下划线命名,例如 APP_PATH
  • 配置参数以小写字母和下划线命名,例如 url_route_onurl_convert
  • 环境变量定义使用大写字母和下划线命名,例如APP_DEBUG

数据库表和字段命名

  • 表名使用小写字母,使用下划线 _ 连接单词,例如:my_table
  • 字段名同样使用小写字母,使用下划线 _ 连接单词,例如:my_column

前缀说明

1.方法与函数的前缀

区分段返回分类段内部实现分类段用意分类段
m:方法Array:仅返回数组为直接结果,如[0 => data1, 1 => data2] || falseGet:从数据库或文件读取数据Now:当前鉴权情况下的唯一
f:函数Bool:仅返回布尔为直接结果,如falseGenerate:无中生有,如 UUID 生成
String:仅返回字符串为直接结果,如 UUID 生成返回的结果4hrf783fh8934uhj984u389Cover:从数据库或文集更新或写入数据数据
//Remind:返回数组包含判断结果与直接结果,标准格式如[false,'非法操作']Easy:简单实现
Result:返回布尔或直接返回数组、结果等等,如false/[name=>'xxxx']false/成功
Object:返回方法或对象
Void:不做返回

2.存储单位的前缀

区分段要求作用域分类段定义由来分类段用意分类段
attrG:可写,可变,如:$attrGReqTimeReq:request 请求Now:当前鉴权情况下的唯一
T:只读,不可变,如:中间件 中的 $request as $var_t_def_requestRes:response 响应
//L:只写,可变,如:$attrLDefAdminAllDataDef:Define 内部产生

3.前缀使用注意

  • 使用前缀时要求先遵循对应的命名规范,将前缀放于命名的合适位置

  • 当一个外部存储单位传入时,可相对于 当前的全局 该 存储单位 的使用范围,重新为其命名,若适用范围依然适用于原名可不变

  • 前缀要求必须按表格从左至右分类段组合,不强制要求完全使用上每一个分类段可掐头或去尾,但我们不建议这么做并且一般来说也不允许间隔使用分类段