代码风格
命名规范
| 类别 | 规范 | 示例 |
|---|---|---|
| 目录/普通文件 | 小写 + 下划线 | user_address |
| 类/文件名 | 大驼峰 | UserAddress.php |
| 控制器方法 | 小写 + 下划线 | get_client_ip |
| Service/DAO 方法 | 小驼峰 | getUserName |
| 属性 | 小驼峰 | tableName |
| 常量/环境变量 | 全大写 + 下划线 | APP_DEBUG |
| 配置键 | 小写 + 下划线 | url_route_on |
| 数据表/字段 | 小写 + 下划线 | think_user、user_name |
PHP 规范要点
- 优先使用 PHP 8 语法(
??、命名空间组use A\B\{C, D}) namespace/use后必须空一行- 类
{写在声明后自成一行;方法{写在声明后自成一行 - 控制结构
{写在同一行,}写在主体后自成一行 - 属性和方法必须加访问修饰符
- 纯 PHP 文件省略最后的
?> - 参数逗号后有空格,逗号前无空格;赋值等号前后加空格
EBAOZU 规范
- 验证放在
validate/目录,不在控制器内联 - 错误抛
AuthException,由统一异常处理输出 - 必须使用模型类,禁止
Db::table() - 用
getMore()/postMore()获取表单数据 - 模型只写搜索条件,数据组装在 services 层
- 复杂逻辑添加行内注释
- 新增数据库改动 SQL 默认追加到:
db_sql/zyl.sql
代码生成
bash
php make:services api@user/User