PHPCS 忽略太多缩进
PHPCS ignoring too many indentations
我已经在 phpcs.xml
中更新了我的 phpcs 规则以包括:
<rule ref="Generic.WhiteSpace.ScopeIndent">
<properties>
<property name="indent" value="2" />
</properties>
</rule>
效果很好,但是如果我有:
function test($x) {
$string = 'Hello';
return $string . $x;
}
没有出现错误,但如果没有缩进就会出现。我无法弄清楚似乎是什么问题。
默认情况下,Generic.WhiteSpace.ScopeIndent
嗅探不强制执行代码的精确对齐。它只强制行前至少 n
个空格或制表符。
例外情况是当它检查 IF 语句、FOREACH 循环或函数等控制结构时。它使用这些结构来确定其余代码的缩进规则,因此需要将这些结构缩进到精确的列。
您可以通过将 exact
嗅探 属性 设置为 true
来启用对所有行的精确检查。可以在此处找到如何执行此操作的示例:https://github.com/squizlabs/PHP_CodeSniffer/wiki/Customisable-Sniff-Properties#genericwhitespacescopeindent
我已经在 phpcs.xml
中更新了我的 phpcs 规则以包括:
<rule ref="Generic.WhiteSpace.ScopeIndent">
<properties>
<property name="indent" value="2" />
</properties>
</rule>
效果很好,但是如果我有:
function test($x) {
$string = 'Hello';
return $string . $x;
}
没有出现错误,但如果没有缩进就会出现。我无法弄清楚似乎是什么问题。
默认情况下,Generic.WhiteSpace.ScopeIndent
嗅探不强制执行代码的精确对齐。它只强制行前至少 n
个空格或制表符。
例外情况是当它检查 IF 语句、FOREACH 循环或函数等控制结构时。它使用这些结构来确定其余代码的缩进规则,因此需要将这些结构缩进到精确的列。
您可以通过将 exact
嗅探 属性 设置为 true
来启用对所有行的精确检查。可以在此处找到如何执行此操作的示例:https://github.com/squizlabs/PHP_CodeSniffer/wiki/Customisable-Sniff-Properties#genericwhitespacescopeindent