如何获取 PHP 函数中的当前递归级别?
我的意思是,有没有像下面这样的“神奇”(或最终正常)功能?
function doSomething($things) {
if (is_array($things)) {
foreach ($things as $thing) {
doSomething($thing);
}
} else {
// This is what I want:
echo current_recursion_level();
}
}
我知道我可以使用另一个函数参数($level
在这个例子中):
function doSomething($things, $level = 0) {
if (is_array($things)) {
foreach ($things as $thing) {
$level++;
doSomething($thing, $level);
}
} else {
echo $level;
}
}
但我想知道是否有内置函数(或技巧)可以做到这一点。也许有一些东西debug_backtrace()
,但它似乎不是一个简单或快速的解决方案。
我没有找到这个信息。也许它根本不存在......