2023-10-01 13:58:39
PHP中的PSR规范是PHP-FIG制定的推荐标准,旨在提升代码可读性、互操作性与团队协作效率,通过统一编码风格、自动加载、日志接口等约定解决PHP生态碎片化问题。
PSR规范的核心目标文件编码强制为UTF-8(无BOM)。
类名使用StudlyCaps(驼峰式,如UserController)。
类常量全大写并用下划线分隔(如MAX_SIZE)。
方法名使用camelCase(小驼峰式,如getUserInfo)。
定义命名空间前缀到文件系统目录的映射规则。
配合Composer实现自动类加载(如"App": "src/")。
提供通用日志接口PsrLogLoggerInterface。
定义日志级别(debug、info、warning、error等)及方法。
缩进使用4个空格。
明确命名空间与use声明位置。
规范控制结构(if、for、while等)格式。
定义HTTP请求与响应的不可变对象接口。
统一创建、读取与修改HTTP消息的方式。
在composer.json中配置PSR-4自动加载:{ "autoload": { "psr-4": { "App": "src/" } }}
PHP_CodeSniffer:检查代码是否符合PSR-12。composer require --dev squizlabs/php_codesniffer./vendor/bin/phpcs --standard=PSR12 src/
PHP-CS-Fixer:自动修复代码风格问题。composer require --dev friendsofphp/php-cs-fixer./vendor/bin/php-cs-fixer fix src/ --rules=@PSR12
PSR规范通过统一编码风格、自动加载、日志接口等约定,构建了PHP生态的“公共语言”,显著提升代码质量、协作效率与项目可维护性。其核心价值不仅在于技术层面,更在于推动团队协作文化的变革。通过自动化工具与持续实践,PSR规范可深度融入开发流程,成为PHP开发者的必备技能。