6

是否有最佳实践(基于 IDE?)、PHP/bash 脚本或其他东西

  • 获取一行的执行时间
  • 获取一行行的执行时间(例如第 17 到 42 行)
  • 获取某个函数或方法的执行时间

在 PHP 中?我目前坚持使用自建解决方案microtime(),但这是一种肮脏、不方便且缓慢的方法。我对 Eclipse、Netbeans、PHPStorm 和 VIM 等主要 PHP IDE 的解决方案特别感兴趣。一个完美的解决方案将是一个跟踪整个应用程序并为每一行、每个方法和每个自定义操作块提供执行时间跟踪的工具。

我将提供 50 赏金以获得一个好的答案。

4

1 回答 1

7

这就是您要查找的内容:http: //xdebug.org/docs/profiler。您可以设置 netbeans 附加到 php 进程,然后逐步运行脚本,查看当前变量内容并分析其运行时间。

只需将 dll 添加到其他 php 扩展,通过 php ini 配置:

; xdebug
zend_extension = "C:\php\v5.4\ext\php_xdebug-2.2.3-5.4-vc9-nts.dll"
xdebug.remote_enable=on
;xdebug.remote_log="/var/log/xdebug.log"
xdebug.remote_host=localhost
xdebug.remote_handler=dbgp
xdebug.remote_port=9000
xdebug.profiler_enable=1
xdebug.profiler_output_dir="C:\dev\profilling\"

Netbeans 设置:

在此处输入图像描述

然后在netbeans(调试)中按Ctrl+F5。您可以逐步运行脚本并观察当前变量值:

在此处输入图像描述

要浏览生成的分析器日志,请在 windows 中使用http://sourceforge.net/projects/precompiledbin/http://sourceforge.net/projects/wincachegrind/ ,或http://kcachegrind.sourceforge.net/html/Home.html对于Linux。

于 2013-07-16T12:23:05.823 回答