在PHP中,我想获得函数内部函数调用的详细信息。我想要的行为(不做这个)是将debug_backtrace()
作为参数传递给函数。
我希望每次调用函数时自动完成。
我需要这个,所以我可以为我正在进行的一个相当大的项目预先定义错误,但我显然想要一个中心trigger_error()
调用的行号,因为这对于追踪不是很有用问题。我也不希望未来的开发人员记住debug_backtrace()
参数。
答案 0 :(得分:2)
你意识到你可以自己打电话给debug_backtrace()
,这几乎是一样的。例如:
function error(..params)
{
$backtrace = debug_backtrace();
array_shift($backtrace);
}
如果你array_shift
给定的回溯,if就好像传递给函数一样。
如果你不熟悉它:
array_shift()关闭数组的第一个值并返回它,将数组缩短一个元素并将所有内容向下移动。
因此,因为debug_backtrace()是用数字索引的,所以它的行为完全相同。