有没有PHP源文件的静态分析工具?
二进制文件本身可以检查语法错误,但我正在寻找功能更多的东西,例如:
- 未使用的变量赋值
- 未先初始化就分配到的数组
- 以及可能的代码风格警告
- ...
Run php
在 lint 模式下从命令行验证语法而不执行:
php -l FILENAME
更高级别的静态分析器包括:
-
php-sat http://www.program-transformation.org/PHP/PhpSat- 需要http://strategoxt.org/ http://strategoxt.org/
- PHP_依赖 http://pdepend.org/
- PHP_CodeSniffer http://pear.php.net/package/PHP_CodeSniffer
- PHP 混乱检测器 http://phpmd.org/
- PHPStan https://github.com/phpstan/phpstan
- PHP-CS-修复程序 https://github.com/FriendsOfPHP/PHP-CS-Fixer
- phan https://github.com/phan/phan
较低级别的分析器包括:
- PHP_解析器 http://pear.php.net/package/PHP_Parser
-
令牌获取全部 http://docs.php.net/manual/en/function.token-get-all.php(原函数)
由于 PHP 的动态特性,运行时分析器对于某些事情更有用,包括:
-
Xdebug http://www.xdebug.org/ has 代码覆盖率 http://www.xdebug.org/docs/code_coverage and 功能轨迹 http://www.xdebug.org/docs/execution_trace.
- My PHP 跟踪工具 http://github.com/troelskn/php-tracer-weaver/tree/master使用静态/动态相结合的方法,建立在 Xdebug 的函数跟踪之上。
文档库phpdoc http://www.phpdoc.org/ and Doxygen http://www.doxygen.org/执行一种代码分析。例如,Doxygen 可以配置为呈现漂亮的继承图:Graphviz http://www.graphviz.org/.
另一种选择是xhprof http://pecl.php.net/package/xhprof,它与 Xdebug 类似,但更轻,使其适合生产服务器。该工具包括一个基于 PHP 的界面。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)