PHP XDebug 如何插入调用堆栈行指示符


PHP XDebug how to interpet the Call Stack line indicators?

读取XDebugger调用堆栈时,每一行都有一个时间、内存使用情况、函数名称和位置指示。

我必须如何插入这些调用堆栈行信息?

  • 时间和内存指示器是仅针对被调用的函数,还是与每个新函数调用叠加在一起?
  • 该堆栈行上的函数调用之前或之后的内存使用指示器是

旁注:我已经阅读了 XDebug 的文档,但它没有为我澄清这些问题。因此,请克制自己不要链接官方文档。另一方面,如果您为此类问题找到了某种简单的方便指南:欢迎使用!

老实说,我没有直接的答案,因为我从来没有关心过XDEBUG中显示的那些变量。但是你有没有考虑过自己发现这一点?您所需要的只是制作一个非常大的 TXT 文件并导致错误。您应该能够看到每个函数调用的时间是增量还是重置以及内存使用情况。

function foo() {
     longFunction();
     quickFunction();
     bigFunction(); // This will probably take a certain amount of time too.
     quickFunction(); // See if calling a small function again keeps the memory usage high.
     maybeCallUndeclaredFunction(); // I think this will cause stack to be shown.
}
function longFunction(){
    for($i = 0; $i < 999999999; $i++){
    }
}
function quickFunction(){
   return null;
}
function bigFunction() {
   $content = file_get_contents('big.txt');
}