2010-06-08 37 views
1

我使用xdebug来分析Windows上的一些PHP代码,并使用WinCacheGrind/Webgrind来分析输出,但我得到了一些奇怪的结果。具体而言,单个方法的总累积时间大于100%!如何花费更多的时间来执行此函数的代码及其调用的所有函数,而不是执行整个脚本所花费的总时间?我在这里错过了什么?xdebug profiler输出奇怪的结果

+0

想知道我自己有时候,也许它与舍入或递归有关。输出结果仍然足以区分瓶颈,因此从不费心去问。 – Wrikken 2010-06-08 20:02:34

回答

0

我建议你使用XHGui而不是xdebug。 XHGui是XHProf的一个很好的增强功能,Facebook用它来帮助他们分析他们的PHP代码。

XHGui的最好的部分之一,除了能够比较执行,是“最难的”选项卡。 Here is a good write up on how to use it

0

最可能的答案是函数在某种方式递归。如果呼叫1的两个函数foo在呼叫2的堆栈跟踪中起作用,则呼叫1的总时间将包括呼叫2中花费的时间。在函数foo中花费的总时间将加倍计算呼叫2的时间。