【问题标题】:PHP Callstack tool [closed]PHP调用堆栈工具[关闭]
【发布时间】:2010-06-04 17:47:14
【问题描述】:

我正在开发一个由其他人编写的非常大的 PHP 应用程序。

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

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

【问题讨论】:

    标签: php diagram


    【解决方案1】:

    如果我对您的理解正确,并且您想要一个工具来显示您拨打的电话。或者你的意思是一个显示其中包含一些文件需要的工具?

    看看 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

      【讨论】:

        【解决方案3】:

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

        【讨论】:

          【解决方案4】:

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

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

          还可以查看PHP_Depend,这是一个 PHP 代码度量工具。这并不完全显示文件依赖关系,但它报告的代码复杂度指标可能对您维护和重构继承的 PHP 项目有所帮助。

          【讨论】:

            【解决方案5】:

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

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

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2017-01-15
              • 2010-11-28
              • 2017-03-14
              • 2012-09-03
              • 2011-06-13
              • 2023-03-11
              • 2014-11-13
              • 2017-08-28
              相关资源
              最近更新 更多