【问题标题】:CakePHP 1.3: Measuring Page Execution TimeCakePHP 1.3:测量页面执行时间
【发布时间】:2011-01-18 02:25:22
【问题描述】:

想弄清楚如何测量 CakePHP 网站的总 PHP 执行时间。看起来在 1.2 中,在调试模式下,它作为 HTML 注释包含在呈现的 HTML 中,但这在我的 1.3 站点上没有发生,无论如何我希望它作为一个可以输出给用户的元素,而不是评论。

我可以使用 microtime() 在常规 PHP 中轻松完成此操作,但我不确定在 CakePHP 中的何处添加代码,而且我怀疑它可能有一个更强大的执行计时器。想法?

【问题讨论】:

    标签: timer cakephp-1.3


    【解决方案1】:

    以防万一其他人好奇,我通过将以下代码添加到我的 layout.ctp 来解决这个问题。您也可以在控制器中执行此操作并将其作为变量传递,这可能更经典的 MVC 友好,但我希望在网站的每个页面上都这样做,而无需在每个控制器中重复代码。

    Page rendered in <?php echo round((getMicroTime() - $_SERVER['REQUEST_TIME']) * 1000) ?>ms.
    

    【讨论】:

      【解决方案2】:

      使用Debug Kit。在其他功能中,您可以通过

      获取总执行时间
      DebugKitDebugger::requestTime()
      

      【讨论】:

        【解决方案3】:

        这可能不是“正确”的方法,但您可以将以下 PHP 代码添加回 app/webroot/index.php(在最后)。然后,如果您在 > 0 上进行调试,您将恢复旧的 1.2 功能。

        if (Configure::read() > 0) {
            echo "<!-- " . round(getMicrotime() - $TIME_START, 4) . "s -->";
        }
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-03-28
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多