通过配置composer.json中的scripts字段,可一键执行PHP代码质量检查。例如设置"check-style"、"analyse"、"test"等命令,并组合为"quality"任务,运行composer quality即可依次执行PHPCS、PHPStan和PHPUnit。需先安装对应dev依赖,支持自定义参数与配置文件路径,还可结合Git钩子在提交前自动检测,提升开发效率与代码一致性。

在 PHP 项目中,使用 Composer scripts 可以简化代码质量检查的流程。你不需要手动运行多个命令,而是通过配置 composer.json 中的 scripts 字段,一键触发静态分析、编码规范检查和单元测试等操作。
配置基本的代码质量检查脚本
打开项目的 composer.json 文件,在 "scripts" 部分添加自定义命令。例如,集成 PHPStan、PHP_CodeSniffer 和 PHPUnit:
"scripts": {
"check-style": "phpcs --standard=PSR12 src/",
"analyse": "phpstan analyse src/",
"test": "phpunit",
"quality": [
"@check-style",
"@analyse",
"@test"
]
}
这样你可以通过运行 composer quality 来依次执行所有质量检查任务。
安装必要的开发依赖
确保相关工具已作为 dev 依赖安装:
- composer require --dev phpunit/phpunit
- composer require --dev squizlabs/php_codesniffer
- composer require --dev phpstan/phpstan
这些工具安装后,Composer 才能正确执行对应的命令。
支持更复杂的脚本逻辑
如果需要指定配置文件或调整参数,可以在 scripts 中写完整命令:
"scripts": {
"check-style": "phpcs -sp --standard=ruleset.xml src/",
"analyse": "phpstan analyse --configuration=phpstan.neon src/",
"test-coverage": "phpunit --coverage-html coverage/"
}
也可以使用脚本组合,比如先清理缓存再分析:
"scripts": {
"clean": "rm -rf cache/",
"qa": [
"@clean",
"@check-style",
"@analyse"
]
}
与 Git 钩子结合使用(可选)
利用 Composer 的事件系统,可以在代码提交前自动运行检查:
"scripts": {
"pre-commit": "@qa",
"post-merge": "composer install"
}
然后在 .git/hooks/pre-commit 添加:
#!/bin/shexec composer run-script pre-commit
这样每次提交都会自动进行质量检测,防止低质量代码进入仓库。
基本上就这些。通过合理配置 Composer scripts,可以显著提升开发效率和代码一致性,而且团队成员只需记住少量命令即可完成全套检查。不复杂但容易忽略的是保持脚本的可读性和可维护性,避免一行写太长的命令。










