Heim  >  Artikel  >  Backend-Entwicklung  >  如何获取zendframework2执行一个action所经过的所有函数?

如何获取zendframework2执行一个action所经过的所有函数?

WBOY
WBOYOriginal
2016-06-23 13:31:15744Durchsuche

如标题所示,如何获取zendframework2在执行一个action时候所从进来到出去所经过的所有函数,和在各个函数上所花费的时间。有想法有思路的帮忙说下。


回复讨论(解决方案)

调用树可由 debug_backtrace 函数得到
进一步的信息需要安装调试工具

那么用debug_backtrace 函数如何只显示function

你可以自己过滤一下
也可以看看 debug_print_backtrace 是否满足你的要求

我用debug_backtrace 里面的DEBUG_BACKTRACE_IGNORE_ARGS过滤掉那个args就清晰了,只是不知道用什么软件计算时间而已

安装调试工具 xdebug
打开文件跟踪功能
xdebug.profiler_enable=on
指定报告文件目录
xdebug.profiler_output_dir=/AMP/xdebug

运行程序后,用 profiler 工具查看报告文件
有 php 的 web 版 profiler 查看工具,你可以下一个用用
自己写代码分析,也可以。只要你弄清楚了报告中每节的含义就可以

运行时间必须是要实际测量的。虽然你可在程序中加代码统计,但由于附加的代码也要耗费时间,误差一定是很大的

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn