我正在寻找一个类似于 gprof 的实用程序,它将生成 调用图 对于 PHP 代码。我更喜欢能够生成图形输出的东西,或者至少是可以由 GraphViz 或类似工具解释的文本输出,但我会选择纯文本输出。

有谁知道有什么工具可以做到这一点?

有帮助吗?

解决方案

我肯定会尝试 Doxygen的。它拥有支持PHP,以及调用图和调用者图表它创建先前已在探索“洋码”对我很有用。

“doxygen的调用图的实施例”

其他提示

不确定是否有任何东西可以分析用 PHP 编写的源代码来生成......但是当您运行代码时,有一种可能性。

您可能想看看 调试工具 扩大 :带来 剖析 到 PHP,并生成类似 callgrind 的文件,可以使用 K缓存研磨 在 Linux 上。

这个能够生成某种调用图。


它还可以与 PHPUNit 集成,生成 代码覆盖率 运行单元测试时
前段时间,PHPUnit 能够使用 graphviz 生成一些调用图;不过,我再也找不到这个选项了:-(


编辑 :这是我第一次听说,但是有一个项目叫做 phpCallGraph 这也许也能帮助你......如果我看一下,似乎有工作正在进行 变更日志

正如已经指出的,使用Doxygen可以生成调用图。

的Xdebug可以生成函数轨迹。这些来自于它们从运行时代码生成的doxygen的图形不同,而静态生成doxygen的。我不知道,可把函数轨迹成一个可视化表示任何工具,但它不应该是很难做到的。

有也是 bytekit 扩展程序中的主要功能是要表明,PHP源代码将字节码生成。它可以在一个曲线图说明这一点,即基本上是一个调用图。

这是一个古老的话题 - 但万一有人发现它有用......

  • kKCachegrind 将生成显示实际执行线程的调用图。

  • PHP调用图 是一个相当简单的 graphviz,它执行静态分析

  • 还有 我自己的努力 它与 PHPCallGraph 类似,但添加了有关循环/条件结构的信息,并提供了向节点添加回调的方法。一些示例脚本与工具包捆绑在一起 - 但您也可以将其嵌入到您自己的脚本中。

如果你需要的东西互动,看看新的 nWire为PHP 。这是一个Eclipse插件与任何PDT 2.1和Zend Studio的7.0工作。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top