NIUCLOUD是一款SaaS管理后台框架多应用插件+云编译。上千名开发者、服务商正在积极拥抱开发者生态。欢迎开发者们免费入驻。一起助力发展! 广告
后端代码规范 ## 环境要求 版本控制使用git版本控制协议 所有开发者使用source tree客户端 或 Git DIE git服务器使用git.oschina.com的版本控制服务 数据服务器同样使用ssh和git命令同步代码(禁止FTP操作) Server:Nginx 1.18.0 mysql版本:MySQL 5.7.31 php版本:PHP >= 7.2 接口层:JSON 生产环境:[http://xxx.xxx.com](http://xxx.xxx.com) 测试环境(以test开始):[http://test.xxx.xxx.com](http://test.xxx.xxx.com) 本地开发环境(以dev开始):[http://dev.xxx.xxx.com](http://dev.xxx.xxx.com) ### 命名规范 * 每个 PHP 文件的头部都应该有注释,注释必须列出文件名称、 作者、相关链接、版权,修改者,修改时间。 ![![](https://docimg7.docs.qq.com/image/pShmq5fzIj-wkNWhnNJDKA?w=844&h=169)](../images/screenshot_1624263403061.png) * 类的属性必须要有注释,包含属性名称、属性类型。 ![](https://img.kancloud.cn/ce/66/ce66af049baee1160946791e9ccbc1d2_565x199.png) * 对于具体含义的变量、常量,如果其命名不是充分自注 释的,在声明时必须加以注释,说明其具体含义。 ### 目录和文件 * 目录使用小写 * 类库、函数文件统一以`.php`为后缀 * 一个类里面方法不要太多 ### 工具包 * 常用方法使用工具包进行管理 * 工具包类尽量为独立单元 * 工具包使用设计模式 ![](https://img.kancloud.cn/79/f0/79f081d166875c98fe2d262a2901f207_1243x674.png) ### 控制器 * 接口开发只进行逻辑层或服务层调用,返回json数据 ![](https://img.kancloud.cn/fc/c1/fcc1ac9726455ac8b030fb348bf4d333_390x309.png) ### 逻辑层 * 进入输入数据校验处理 * 多个服务层数据调用,执行过程 ![](https://img.kancloud.cn/70/56/7056c47d60222ad5a31920c35ef87916_818x621.png) ### 服务层 * 代码最小功能单元,独立存在 * 返回数组,格式如下 * 必须有输入数据,可以默认为空数据 * 服务层继承 * 一个类文件 最多写10个方法function,如果超了,就在当前目录下创建子同类的子目录,进行服务拆分 * 在服务层调用数据模型类 ![](https://img.kancloud.cn/52/57/5257db84871478ffb41d8cacec032858_583x495.png) ### 数据模型 * 数据表名和当前模型类名一致,采用驼峰法命名,并且首字母大写 ### 数据表和字段 * 数据表和字段采用小写加下划线方式命名,并注意字段名不要以下划线开头,例如 `think_user` 表和 `user_name`字段,不建议使用驼峰和中文作为数据表字段命名。 * sql函数和从句注意使用场景,尽量减少使用,可以使用orm代替