PHP codesniffer - 如何教它忽略空格?

时间:2009-12-09 15:23:52

标签: php coding-style

我正在使用PHP CodeSniffer来检查我的代码是否符合Zend标准。 每行80个字符就是其中之一。但我更喜欢用白色空格缩进行 和嗅探器将带有行缩进的短行视为长行。

有没有办法教它忽略空白身份? 或者它是有意义的,我的线缩进越远,它应该越短?

3 个答案:

答案 0 :(得分:3)

此设置应位于带有Standards / Zend目录的ruleset.xml中,例如/usr/share/pear/PHP/CodeSniffer/Standards/Zend/ruleset.xml

这将是一个如下的块;

 <rule ref="Generic.Files.LineLength">
   <properties>
     <property name="lineLimit" value="80"/>
     <property name="absoluteLineLimit" value="120"/>
   </properties>
 </rule>

根据自己的喜好更新'lineLimit'和'absoluteLineLimit'。 这两个设置之间的区别是超过'absoluteLineLimit'的行会触发错误,而'lineLimit'只会导致警告。

缩进是行长度的一部分。默认情况下,不可能忽略这些,但如果您真的想要这样,您可以编写自己的嗅探。但我建议反对它,因为它使得最大长度的整个点无效。

答案 1 :(得分:1)

实际上,无论你有多少缩进,这都是非常合理的,可以将一行保留为80个字符。

答案 2 :(得分:0)

codesniffer:docs

When the tab width is set by default, the replacement of tabs with spaces 
can be disabled for a single script run by setting the tab width to zero.

Disabling the replacement of tabs with spaces

$ phpcs --tab-width=0 /path/to/code

如果您的标签/间距导致这种情况发生,这当然不会帮助您缩小到80 col。