PHP调用堆栈工具

时间:2010-06-04 17:47:15

标签: php diagram

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

有没有人知道任何工具(免费或商业)可以让我查看哪个PHP文件包含/调用/需要哪个其他PHP文件?

我尝试使用nWire for PHP,它无法准确捕获我的include()调用。

5 个答案:

答案 0 :(得分:3)

如果我理解你,你想要一个工具,显示你所做的电话。或者你的意思是一个工具,显示哪些文件包含一些文件?

看看Xdebug我认为它应该能够做第一件事:

Xdebug stack trace

答案 1 :(得分: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

答案 2 :(得分:0)

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

答案 3 :(得分:0)

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

  

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

另请查看PHP_Depend,这是PHP的代码指标工具。这并不完全显示文件依赖性,但它会报告代码复杂性指标,这些指标在您维护和重构继承的PHP项目时可能会有所帮助。

答案 4 :(得分:0)

如果您不介意UML,Enterprise Architect会生成一些非常好的自动生成的类图。我在大多数项目中使用它:)它有点贵,但它值得它

http://www.sparxsystems.com/products/ea/index.html