如何配置phpcs使控制结构内使用6个空格缩进?
问题
运行phpcs时,工具提示if控制结构内的代码至少需8个空格缩进,但我希望使用6个空格。示例代码及报错信息如下:
class bla { private function wop() { if (true) { $something = 'yes'; // 6 spaces indent is what I want! } } }
indented at least once; expected at least 8 spaces, but found 6
(PSR12.ControlStructures.ControlStructureSpacing.LineIndent) Each line in a
multi-line control structure must be
请问如何配置phpcs以满足这一需求?
解决方法
- 在phpcs的配置文件(如
phpcs.xml或ruleset.xml)中添加自定义规则,覆盖PSR12的默认缩进设置。 - 配置示例如下:
<?xml version="1.0"?> <ruleset name="CustomIndent"> <!-- 继承PSR12规则,排除默认的控制结构缩进检查 --> <rule ref="PSR12"> <exclude name="PSR12.ControlStructures.ControlStructureSpacing.LineIndent" /> </rule> <!-- 自定义控制结构内的缩进为6个空格 --> <rule ref="Generic.WhiteSpace.ScopeIndent"> <properties> <property name="indent" value="6"/> <property name="ignoreIndentationTokens" type="array"> <element value="T_COMMENT"/> </property> </properties> </rule> </ruleset>
- 保存配置后,phpcs会按照你设定的6个空格缩进进行代码检查。如果已有配置文件,将上述规则合并到现有文件即可。
内容的提问来源于stack exchange,提问作者klokop
相关产品推荐
相关产品推荐

