我正在尝试使用 PHP_CodeSniffer 根据 zend 编码标准来嗅探 php 文件中的问题。问题是一些基本规则没有检测到,例如
String Literals
$a = "Example String";
should give a warning because the standard is
$a = 'Example String';
我错过了什么,这不是代码标准的一部分吗?
我正在尝试使用 PHP_CodeSniffer 根据 zend 编码标准来嗅探 php 文件中的问题。问题是一些基本规则没有检测到,例如
String Literals
$a = "Example String";
should give a warning because the standard is
$a = 'Example String';
我错过了什么,这不是代码标准的一部分吗?
根据ZF 参考指南中的相应页面,它是 Zend 编码标准的一部分。但是,这并不一定意味着所有这些规则都已包含在phpcs中。它们是不相关的项目。如果您查看在 phpcs 中为 ZF 定义的规则集,您将在顶部看到此通知:
基于早期 Zend Framework 编码标准的编码标准。请注意,该标准已过时。
从Thomas Weidner在Wiki for ZF Coding Standards中的评论来看,目前没有可用的最新 PHPCS 规则集:
我的代码嗅探器实现还没有完成,但 Zend 也没有接受它。有几个规则不符合,没有经过检查,或者过于严格。我不得不从孵化器中删除它。您可以通过查看 SVN (
随 PHPCS 提供的 CS 文件不符合任何 ZF 标准。
有人说 Zend 不会集成自己的 CS 测试平台,因为它会在新的 Pear2 标准可用时立即使用。这就是我从去年开始没有做任何额外工作的原因。
所以实际情况是没有可用的官方 CS 测试平台。