获取PHP中嵌套函数的数量

时间:2012-01-02 03:51:40

标签: php

如何获取函数嵌套在PHP中的次数?

例如

function infinite(){
  infinite();
}

2 个答案:

答案 0 :(得分:3)

你可以像这样递言:

function infinite($depth = 1) {
  infinite($depth + 1);
}

infinite();

然后$depth包含函数内的当前递归级别。

你也可以使用debug_backtrace,但这不是很有效,所以你应该在递归的每一步都不执行它!

答案 1 :(得分:-1)

$depth = count(debug_backtrace());

这将告诉您调用堆栈的长度。