stickee / php-cs-fixer-config
stickee的PHP CS Fixer配置
Requires
- php: ^8.3
- adamwojs/php-cs-fixer-phpdoc-force-fqcn: ^2.0
- friendsofphp/php-cs-fixer: ^3.62.0
This package is auto-updated.
Last update: 2024-09-12 15:22:57 UTC
README
为stickee项目提供PHP CS Fixer配置。
安装
mkdir -p tools/php-cs-fixer composer require --working-dir=tools/php-cs-fixer stickee/php-cs-fixer-config cp tools/php-cs-fixer/vendor/stickee/php-cs-fixer-config/dist/.php-cs-fixer.dist.php .php-cs-fixer.dist.php
您必须提交这个新目录和.php-cs-fixer.dist.php
配置文件。
您必须将.php-cs-fixer.cache
添加到您的.gitignore
文件中。
用法
tools/php-cs-fixer/bin/php-cs-fixer fix
覆盖
您可以通过在.php-cs-fixer.dist.php
文件中添加到$overrideRules
数组中来覆盖任何规则或添加您自己的规则。
有关可用规则及其选项的详细描述,请参阅此处。
示例
这已经为您完成,使用了ordered_class_elements
规则,该规则已重置为PSR12
的use_traits
值。
这已被添加,以帮助PR审查者仅查看在检查您的项目时已更改的内容,而不是重新排序的元素。
一旦您确认您的项目已正确检查,您可以移除此覆盖以使用此规则的stickee设置,这些设置更严格且排序更多元素。
预提交钩子
您可以使用PHP CS Fixer与Husky和Lint Staged一起使用,以仅检查git暂存的PHP文件。
安装
- 将Husky安装到您的项目中
- 将Lint Staged安装到您的项目中
cp tools/php-cs-fixer/vendor/stickee/php-cs-fixer-config/dist/.husky/pre-commit .husky/pre-commit
cp tools/php-cs-fixer/vendor/stickee/php-cs-fixer-config/dist/.lintstagedrc.json .lintstagedrc.json
持续集成
在tools/php-cs-fixer/vendor/stickee/php-cs-fixer-config/dist/.github/workflows/php-cs-fixer.yaml
中包含了GitHub操作文件的示例。
这将在PR及其新提交上运行PHP CS Fixer。
理论上这不是必要的,因为开发人员应使用上面提到的预提交钩子来检查他们的代码,但这确保了即使开发人员跳过了预提交钩子,PR中也包含已检查的代码。
规则
可用的RuleSets可在tools/php-cs-fixer/vendor/stickee/php-cs-fixer-config/src/RuleSet/
中找到。
您可以通过在.php-cs-fixer.dist.php
文件中[ctrl] + 点击类来获取它。
网络描述(更美观)
您可以使用https://mlocati.github.io/php-cs-fixer-configurator/#version:3.2或https://cs.symfony.com/doc/rules/index.html来查看规则执行了什么操作。
CLI描述(更快)
或者,您可以运行tools/php-cs-fixer/vendor/bin/php-cs-fixer describe <rule-or-set-name>
。
致谢
https://github.com/Visual-Craft/php-cs-fixer-config
它提供了关于如何为PHP CS Fixer创建自定义配置的灵感,因为没有任何内置方法可以做到这一点。
stickeerehan
因为他的早期工作在PHP代码风格上,所以我不必从头开始。
"supermarket mobiles"的开发者
为了审查我们使用的规则所涉及的众多PR(Pull Requests)。
#codestyle Slack频道的成员
关心代码风格。