
PSR-12 扩展了 PSR-1 和已弃用的 PSR-2,为现代 PHP 提供了全面的编码规范。该标准通过定义特定的格式规则来确保 PHP 代码的一致性。
关键样式规则
- 常规代码布局:
- 文件必须使用 Unix LF 行尾符。
- 文件必须以单个空行结尾。
- 必须省略 PHP 文件中的
标签(如果引擎能够自动识别)。 - 代码行应限制在 80 个字符以内。
- 命名空间声明后必须有一行空行。
- 开括号必须与语句在同一行。
- 类结构:
以下是一个符合规范的类示例:
- 控制结构:
以下示例展示了 PSR-12 中控制结构的格式化规范:
立即学习“PHP免费学习笔记(深入)”;
现代 PHP 功能
- 类型声明:
以下示例展示了如何在方法签名中使用类型声明:
- 属性语法:
以下示例展示了如何在 PHP 8 中使用属性语法:
PSR-12 兼容性工具
- PHP CodeSniffer 配置:
- PHP-CS-Fixer 设置:
-
IDE 集成:
- PhpStorm
- VS Code 配合 PHP Intelephense
常见问题和解决方案
- 混合行尾符:
可以使用以下命令检查和修复混合行尾符问题:
# 检查混合行尾符
find . -name "*.php" -exec file {} \;
# 使用 dos2unix 修复
find . -name "*.php" -exec dos2unix {} \;
- 不正确的缩进: 确保使用一致的缩进 (例如,四个空格)。
下一步
下一篇文章将探讨 PSR-13,它定义了 PHP 中 HTTP 消息接口的标准。
资源
- 官方 PSR-12 规范
- PHP CodeSniffer PSR-12 规则集
- PHP-CS-Fixer 文档
示例:声明语句
示例:类结构










