You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 05:36:01