欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

如何获取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 查看工具,你可以下一个用用
自己写代码分析,也可以。只要你弄清楚了报告中每节的含义就可以

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