可在composer.json中配置自定义脚本实现一键编码规范检查:添加"cs:check": "phpcs --standard=PSR12 --extensions=php --report=full src/ tests/"等命令,并推荐配合phpcbf、Git钩子及CI使用。

直接在 composer.json 里配置一个自定义脚本,调用 phpcs 命令即可实现一键检查编码规范。
安装 PHP_CodeSniffer
确保项目已通过 Composer 安装 phpcs(推荐本地安装,避免全局依赖冲突):
- 运行
composer require --dev squizlabs/php_codesniffer - 安装后命令路径为
vendor/bin/phpcs(Linux/macOS)或vendor\bin\phpcs.bat(Windows) - 可选:同时安装常用标准,比如
composer require --dev phpcompatibility/php-compatibility(用于兼容性检查)
配置 composer.json 脚本
在 composer.json 的 "scripts" 段添加一条检查命令:
"scripts": {
"cs:check": "phpcs --standard=PSR12 --extensions=php --report=full src/ tests/"
}
-
--standard=PSR12指定使用 PSR-12 规范(也可换为Squiz、Generic或自定义规则集) -
--extensions=php明确只扫描 PHP 文件 -
--report=full输出详细报告(也支持summary、json、checkstyle等格式) -
src/ tests/是要检查的目录,按需调整
增强实用性的小技巧
让检查更贴近开发流程:
立即学习“PHP免费学习笔记(深入)”;
- 加
--colors让终端输出带颜色,更易读 - 加
--ignore="*/vendor/*,*/tests/Bootstrap.php"排除不需要检查的路径 - 加
--severity=5只报告中等及以上严重性问题(默认全部) - 写成两个脚本:一个快速检查(
cs:check),一个自动修复(cs:fix,需搭配phpcbf)
例如修复脚本:"cs:fix": "phpcbf --standard=PSR12 --extensions=php src/ tests/"
配合 Git 钩子或 CI 使用
检查脚本本身不自动阻止提交,但可以集成到工作流中:
- CI 中(如 GitHub Actions)直接运行
composer cs:check,失败则中断构建 - 本地可用
composer install后自动注册钩子,或配合composer/composer-plugin类工具 - 简单方案:在
pre-commit钩子里执行composer cs:check || exit 1(需额外安装 husky 或 simple-git-hooks)
基本上就这些 —— 不复杂但容易忽略的是路径和标准的一致性,建议把 phpcs.xml 配置文件也放进项目根目录,比命令行参数更易维护。











