PHP_CodeSniffer,PHPMD或PHP Depend

时间:2011-05-15 16:15:28

标签: php code-analysis static-analysis

我正在考虑对现有的PHP项目进行一些静态代码分析,而我无法理解PHP_CodeSniffer,PHPMD和PHP Depend之间的区别。这些只是这些问题的替代方案,还是它们在某些方面相互补充?为什么开发人员可以选择其中一个?

1 个答案:

答案 0 :(得分:54)

来自http://phpqatools.org

的无耻副本
  

<强> pdepend

     

pdepend可以从给定的代码库生成大量软件度量标准。这些值可用于衡量软件项目的质量,它们有助于识别应用代码重构的应用程序部分。

     

<强> phpmd

     

phpmd扫描PHP源代码并查找潜在的问题,例如可能的错误,死代码,次优代码和过于复杂的表达式。

     

<强> phpcs

     

phpcs标记PHP,JavaScript和CSS文件,并检测违反一组已定义的编码标准。它是一种必不可少的开发工具,可确保您的代码保持清洁和一致。它还可以帮助防止开发人员出现一些常见的语义错误。

所以不,他们不仅仅是替代品。 PDepend和PMD专注于软件度量,而PHPCS根据令牌流中的模式定义规则。 PDepend并不关心发现Coding Standard违规行为。你应该使用它们全部三个。如果可能,在Continuous Integration服务器中,例如Jenkins