如何获取zendframework2执行一个action所经过的所有函数?
程序员文章站
2024-01-17 12:33:28
...
如标题所示,如何获取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 查看工具,你可以下一个用用
自己写代码分析,也可以。只要你弄清楚了报告中每节的含义就可以
运行时间必须是要实际测量的。虽然你可在程序中加代码统计,但由于附加的代码也要耗费时间,误差一定是很大的