我正在尝试使用PHP_CodeSniffer根据zend编码标准来嗅探php文件中的问题。 问题是未检测到某些基本规则,例如
String Literals
$a = "Example String";
should give a warning because the standard is
$a = 'Example String';
我错过了什么,这不是代码标准的一部分吗?
答案 0 :(得分:5)
根据respective pages in the ZF Reference Guide,它是Zend编码标准的一部分。但是,这并不一定意味着所有这些规则都包含在phpcs中。他们是不相关的项目。如果您查看ruleset defined for ZF in phpcs,您会在右上方看到此通知:
基于早期Zend Framework编码标准的编码标准。请注意,此标准已过期。
根据comment by Thomas Weidner中的Wiki for ZF Coding Standards判断,目前没有最新的PHPCS规则集可供使用:
我的代码嗅探器实现还没有完成,但Zend也没有接受它。有几条规则不符合,没有检查,或者太严格。我不得不从孵化器中删除它。您可以通过查看SVN找到最新版本(
PHPCS提供的CS文件不符合任何ZF标准。
据说Zend不会整合自己的CS测试平台,因为它会尽快使用新的Pear2标准。这就是我去年以来没有做过任何额外工作的原因。
所以实际状态是没有正式的CS测试平台。