mds-agenturgruppe / php-code-checker
用于运行PHP 8.x代码检查的Pimcore 11 CLI工具
v3.2.0
2024-01-10 13:05 UTC
Requires
- phpmd/phpmd: 2.13.0
- phpstan/phpstan: ^1.10
- phpstan/phpstan-symfony: ^1.3
- squizlabs/php_codesniffer: ^3.6
- symplify/phpstan-rules: ^12.4
README
mds-code-check是一个CLI工具,用于运行PHP 8.x代码检查,针对Pimcore 11和Symfony 6,可以使用PHPStan配置规则集
安装
composer require --dev mds-agenturgruppe/php-code-checker:^3.0
入门指南
成功安装后,运行此命令
vendor/bin/mds-code-check
这将使用默认规则集执行代码检查,该规则集适用于Pimcore 11项目的代码检查。
配置规则集
规则集
规则集定义了在运行mds-code-check脚本时,项目使用的检查及其参数。默认情况下使用rulesets/pimcore11/ruleset.conf。
配置变量
规则集文件定义了用于配置执行的检查的变量。
- 启用(
1)或禁用(0)检查PHPSTAN、PHPCS、PHPMD
- 每个检查的参数
PHPSTAN_ARGS、PHPCS_ARGS、PHPMD_ARGS
项目配置
mds-code-check可以根据项目特定需求进行调整。
使用的规则集
通过将.mds-code-checker.conf放置在项目根目录中,并使用规则集文件定义RULESET变量来配置使用的规则集。
RULESET="./vendor/mds-agenturgruppe/php-code-checker/rulesets/pimcore11/ruleset.conf";
调整规则集
在项目配置文件.mds-code-checker.conf中,可以通过覆盖定义变量来调整使用的规则集。
禁用检查和更改参数的示例
RULESET="./vendor/mds-agenturgruppe/php-code-checker/rulesets/pimcore11/ruleset.conf";
PHPSTAN_ARGS="--level=9 analyse bundles"
PHPCS_ARGS="--extensions=php --standard=./src/project-phpcs-ruleset.xml ./src -s"
PHPMD_ARGS="./src text --standard=./src/project-phpmp-ruleset.xml --exclude=\"*/Resources/views/*\""
mds-code-check参数
在开发或分析过程中,有时只需要执行一些测试。这可以通过将检查名称作为参数传递给mds-code-check来实现。
只执行phpstan
vendor/bin/mds-code-check phpstan
只执行PHP_CodeSniffer和phpmd
vendor/bin/mds-code-check phpcs phpmd
CI流水线集成
对于在CI流水线中使用和在代码检查阶段失败的情况,如果至少有一个执行的检查脚本返回退出代码1,则mds-code-check返回退出代码1。如果所有检查都成功,则返回退出代码0。