目录

  • 编码规范

  • 框架规范

  • 插件模块规范

  • 数据库规范

  • 接口返回规范

编码规范

  • 符合PSR-1或PSR-2的PHP编程

  • 方法和函数有注释,注释内容包括功用,参数,返回值,必要时还有示例

  • 方法命名规范,驼峰命名,不能出现下划线

  • 类属性规范,类属性和类方法一致,统一使用驼峰

  • 函数命名 小写字母加下划线

  • 常量全部大写下划线分割

  • 变量、函数名一律为小写格式

  • 属性名称开头小写驼峰

  • 类私有成员属性,下划线小写开头驼峰

  • 以标准计算机英文为蓝本,杜绝一切拼音、或拼音英文混杂的命名方式

  • PHP 的内建值 true、false 和null必须全部采用小写字母书写

  • 文件编码为 UTF-8,并关闭 UTF-8 BOM((Byte Order Mark))的功能。切记请不要使用windows自带的记事本编辑项目文件

框架规范

  • 自定义助手函数都放在 common\helpers\ 且方法都为static方法

  • 模型统一在common\models\下对应的是各个模块的模型,私有的表单模型可在各种应用/模块下面创建

  • 状态枚举统一调用common\enums\StatusEnum.php中的常量和属性

  • 资源文件在web\resource下对应的是各个应用的名称

  • 每个应用下面应有一个基础控制器,做为该应用的父控制器,方便做一些公共操作,所有应用的父控制器都继承 common\controllers\BaseController,后台父类控制器默认为MController

  • 超级管理员在backend\config\params.php的adminAccount项中定义其UID,超级管理员不需要进行RBAC权限检查

  • 公共别名在common\config\bootstarp.php中定义,使用Yii::getAlias()访问

插件模块规范

  • 命名统一大写驼峰

  • 资源文件在 当前模块根目录/resource下

  • 模型为当前模块的common/models下

数据库规范

  • 所有的字段必须添加注释

  • 数据表名小写,多关键字使用下划线分割(关键字尽量全称)

  • 字段名小写,多关键字使用下划线分割(关键字尽量全称)

  • 所有的表应该都有status 字段来标注数据状态(-1:已删除,0:禁用,1:正常),业务状态请使用其他字段;status字段类型 为带符号的 tinyin(4)。如果还需要其他的数据状态 请先判断该状态的数据是有用的数据还是无意义的数据,有用的数据状态 > 2,无意义的数据状态 < -1

  • 所有的删除(除开清空回收站操作) 请 标记status 为 -1

  • 创建时间字段为append,修改时间字段为updated,类型int(10)

  • 所有字段不允许 NULL值

接口返回规范

直接返回

$this->setResult();
return $this->getResult();

实际上返回为

{
    "code": 404,
    "message": "未知错误",
    "data": []
}

一般返回

$result = $this->setResult();

$result->code = 200;
$result->message = '操作成功';
$result->data = [];

return $this->getResult();

或者

$this->setResult();

$this->_result->code = 200;
$this->_result->message = '操作成功';
$this->_result->data = [];

return $this->getResult();

状态码说明

状态码说明
200提交或者获取成功
201下拉加载没有更多数据了
401表示用户没有权限(令牌、用户名、密码错误)
404找不到字段报错(默认)
422字段验证错误

上次更新:2018-07-12