PHP调用栈工具

7

我正在处理一个非常大的PHP应用程序,是由其他人编写的。

有没有人知道任何工具(免费或商业)可以让我绘制出哪些PHP文件包含/调用/需要哪些其他PHP文件的图表?

我尝试过nWire for PHP,但它不能准确地捕获我的include()调用。

5个回答

3
如果我理解正确,你需要一个工具来显示你所做的包含调用。或者你是指一个工具,它可以显示哪些文件需要包含一些内容?
看看Xdebug,我认为它应该能够完成第一件事: Xdebug stack trace

2

我不确定是否有这样的工具,但是如果想知道包含哪些文件,可以使用 get_included_files 函数,也可以像下面这样获取定义的变量、常量和函数。

// get vars
$vars = get_defined_vars();
// get constants
$consts = get_defined_constants();
// get functions
$funcs = get_defined_functions();

get_defined_vars
get_defined_constants
get_defined_functions

这些函数是PHP中的内置函数,可以帮助您获取当前脚本中定义的变量、常量和函数的信息。使用这些函数可以更好地了解您的代码,并在需要时进行调试。

0

phpDocumentor将至少列出所有类并以HTML格式记录它们,每个类中都有指向所需类的链接。如果您想以特定方式进行依赖关系图形化,还可以扩展phpDoc的行为。phpDoc松散地基于javadoc。


0

尝试 Inclued ,这是一个扩展 PHP 并报告文件包含和其他信息的 PECL 包。手册介绍如下:

在运行时跟踪和转储文件包含和类继承的层次结构。这些文件可能已经使用 include(),include_once(),require() 或 require_once() 包含。还会报告类继承依赖关系。

另外,请查看 PHP_Depend ,这是一个用于 PHP 的代码度量工具。它并没有准确显示文件依赖关系,但会报告代码复杂度指标,这在您维护和重构继承的 PHP 项目时可能会有所帮助。


0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接