PHP代码分析器确定使用的类/扩展

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了PHP代码分析器确定使用的类/扩展脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
问题

我有一个遗留代码库,我需要分析和确定依赖项.特别是对类(内部/外部)和扩展(Memcache,PDO等)的依赖.

我试过的

我已经回顾了Is there a static code analyzer for PHP files?中列出的工具.不幸的是,这篇文章已经过时了,大多数有前途的工具如phpCallGraph都不再适用.

我的想法是用词法分析代码并寻找类令牌.查看这些列表至少可以让我直观地确定依赖关系.但是,在以下代码中查找OtherClass可能很复杂:

$classname = 'OtherClass';
echo $classname::doubleColon();

最后,我怀疑我是第一个需要这个的人.我确信存在一种工具或工具组合来提供我需要的东西.所以我在自己写这篇文章之前就问SO社区.

更新

理想情况下,此工具将分析具有完整代码覆盖率的多个文件因此,像Xdebug这样的工具虽然很棒,但并不能解决这个问题.

您可以使用Gopal Vijayaraghavan的 inclued extension而不是PHPCallGraph,它与 Graphviz结合使用,可以为您提供包含特定执行路径的所有包含文件的漂亮图表.

例:

此外,我建议使用Xdebug(一个PHP调试器),它提供了一个可以在Valgrind之前输出数据的分析器.使用兼容IDE的调试器来跟踪执行路径(这有助于我通过例如Drupal的大量调用栈来跋涉).

结合两者,你应该得到一个相当的概述.

编辑

在网上搜索找到了nWire for PHP一个eclipse插件,看起来它可能是适合你的工具(30天免费试用,应该足以让你先行一步).

脚本宝典总结

以上是脚本宝典为你收集整理的PHP代码分析器确定使用的类/扩展全部内容,希望文章能够帮你解决PHP代码分析器确定使用的类/扩展所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。