是否有PHP源文件的静态分析工具?

二进制本身可以检查语法错误,但我正在寻找做得更多的东西,比如:

未使用的变量赋值 未初始化就被赋值的数组 可能还有代码风格的警告 ...


当前回答

PHP PMD(编程错误检测器)和PHP CPD(复制/粘贴检测器)作为PHPUnit的前一部分。

其他回答

为了完整起见,还要检查phpCallGraph。

PHP PMD(编程错误检测器)和PHP CPD(复制/粘贴检测器)作为PHPUnit的前一部分。

你可能想尝试用Facebook的HipHop编译。

它对整个项目进行静态分析,可能就是你要找的。

GitHub页面

在线PHP lint

PHPLint

单元变量检查。不过,Link 1和2似乎已经很好地做到了这一点。

不过,我不能说我密集地使用了其中的任何一个:)

参见Semantic Designs的克隆检测工具CloneDR,它可以发现复制/粘贴/编辑的代码。

它将找到精确的和接近错误的代码片段,尽管有空白,注释,甚至变量重命名。PHP的检测报告样本可以在网站上找到。(我是作者。)