nelson6e65 / code-sniffer-helpers
PHP Code Sniffer 辅助工具
v1.1.0
2024-06-06 12:14 UTC
Requires
- php: >=7.2
Requires (Dev)
- composer/composer: ^2.0
- phpstan/phpstan: ^1.11
- squizlabs/php_codesniffer: ^3.5
README
PHP Code Sniffer 辅助工具。
安装
composer require --dev nelson6e65/code-sniffer-helpers
功能
Composer 脚本
phpcbf
用于 lint-staged
使用 PHP Code Sniffer 自动修复器修复您已暂存的代码(或指定的文件/文件夹)的包装器。
存在一个错误,不允许您直接将其用作自动修复器(squizlabs/PHP_CodeSniffer#1818)。有一个 解决方案可以将其用作 composer 脚本,但不适用于 lint-staged 预提交钩子。
此辅助工具旨在与 lint-staged 一起运行,但您也可以直接在 composer 脚本中使用它。
使用 lint-staged 设置
将脚本添加到您的 composer.json 文件中
{ "scripts": { "cs:fix-filtered": ["NelsonMartell\\PhpCodeSniffer\\ComposerScripts::phpcbf"] } }
我使用了
"cs:fix-filtered"
名称,但您可以使用您喜欢的任何脚本名称。
在您的 package.json 中配置 Husky + lint-staged
{ "husky": { "hooks": { "pre-commit": "lint-staged" } }, "lint-staged": { "*.php": "composer cs:fix-filtered" } }
Husky 4 的示例。如果您使用 Husky 5,请根据需要进行调整。
使用方法
您也可以通过使用 composer cs:fix-filtered {PATHS}
直接通过 composer 运行它。示例
composer cs:fix-filtered src/ tests/ config/my-config-file.php
注意:忽略不存在的文件/目录。
输出
输出受 pretty-quick 输出的启发
composer cs:fix-filtered config/ src/Example.php src/non-existent-file.php
许可证
版权(c)2021 Nelson Martell
有关详细信息,请阅读 LICENSE
文件。