PHP开发内部规范,欢迎提出优化建议
一、PHP注意事项
- 1、URL请求地址采用”-“分割。(已执行,部分人未按标准执行)
- 2、方法名采用驼峰法。(已执行,部分人未按标准执行)
- 3、参数必须小写和下划线分割,严禁使用驼峰或者其它格式,且提交参数与返回字段名一致。 (已执行,部分人未按标准执行)
- 4、获取数据采用GET, 添加,修改必须POST 。(已执行,部分人未按标准执行)
- 5、API返回格式必须调用jsonResult基础方法。(已执行)
6、错误码必须调用ErrCode,不能直接写错误码数字。(已执行) - 7、分页采用框架自带的, 自建二维数组必须[‘data’ => $arr], 分页条目必须使用limit参数。(已执行)
- 8、接口返回备注信息(msg),必须写在config.msg文件。(新增)
- 9、redis的key必须写在config.redis_key文件。(已执行,部分人未按标准执行)
- 10、composer安装新依赖必须写doc/composer.txt文件中,并说明用途。(已执行)
- 11、新增定时任务,进程必须写doc/crontab.txt文件中,并说明用途。(已执行)
- 12、redis必须有设置过期时间。否则存mysql,再缓存(新增)
- 13、model名字与表名一致(如:表q_user MODEL:QUser )
- 14、请求外网地址,必须设置请求时长2s
- 15、redis不存储长期数据, 只用于缓存和临时数据存储(后期转移非常容易导致数据丢失)
二、mysql注意事项
新增表(负责人:刘军)
- 1、字符集utf8mb4 排序规范utf8mb4_unicode_ci(已执行,部分人未按标准执行)
- 2、数据库字段必须小写+下划线(已执行,部分人未按标准执行)
- 3、新表字段必须有status,created_at,updated_at(关联表经常漏掉三个字段)
- 4、status状态必须1启用, 0禁用
- 5、尽量不使用NULL
查询 - 1、查询sql字段必须加上表名(线上已出现过问题)
- 2、严禁使用*号查询
- 3、sql语句必须写model,不能写在控制器
更新、插入、删除 - 1、更新、插入、删除多条数据,非日志类型必须“采用事务”(保证一致性)
三、YAPI文档注意事项
- 1、字段说明必须与产品文档保持一致(前端反馈核对字段不清晰)
- 2、迭代版本接口需新增版本目录 (防止混乱)
- 3、接口有变更,必须同步更新接口文档
四、合并分支事项
- 1、必须以master创建分支开发,且带上自己的名字(origin/hotfix/huang/slowOpt)
- 2、发布至master,必须先合master到开发分支
- 3、“测试分支”禁止合并到“开发分支”
- 4、“预发布分支”禁止合并到“开发分支”
本作品采用《CC 协议》,转载必须注明作者和本文链接
本帖由系统于 3年前 自动加精
关于 LearnKu
规范和我现在差不多 挺不错的,不同公司 有几个不一样的 要看你们的项目
四、合并分支事项
1、必须以 master 创建分支开发,且带上自己的名字(origin/hotfix/huang/slowOpt) 2、发布至 master,必须先合 master 到开发分支 3、“测试分支” 禁止合并到 “开发分支” 4、“预发布分支” 禁止合并到 “开发分支”
这4点其实就是1点,代码要用master的
其实 正常来说 master为稳定版本,develop为开发版本,成员用自己的分支,应该从develop拉取,合并至develop,经过测试后,合入master打版本
主题内容好像带了你们公司的负责人
要强壮的规范的话用大公司的就行,再加上些公司自己的
错误码怎么统一规范和响应给前端的
必须遵守 php8 语法规范确定好变量的类型返回类型参数,文档也必须要求按照论文格式书写。
任何接收的数据,必须验证
新表字段必须有 status,created_at,updated_at 且created_at,updated_at 字段必须加上索引
代码规范直接遵循:psr-1 地址:www.php-fig.org/psr/psr-1/ 本站也有翻译版:PSR-1 基础编码规范
这么硬的么。直接把内部规范给发上来了
代码你直接遵守psr规范多好
API 返回格式必须调用 jsonResult 基础方法。 这个为什么要开发每次手动调,不能二次封装好么
表名必须以 tab_ 为前缀
单行不超过 120 字符
redis key 的命名规范
function 注释必须注明函数返回值类型