PHP怎么打印调用堆栈

方法一:debug_backtrace

无论是有产生了bug,都可以调用本方法,返回所有调用的堆栈。返回值保存到一个变量中。

方法二:debug_print_backtrace

和前面差不多,但是会直接输出,通常来说不友好。

方法三:Exception类的getTraceAsString()成员函数返回一个调用堆栈。

此方法,过于麻烦,而且不灵活,因为返回的格式是固定的字符串,如果需要取出其中的组成部分,则需要手动拆分。

使用第一个方法,通常是最佳的。

在一些情况下,此方法非常巧妙,也就是假设有一个公用函数,a() ,那么可以在a方法中判断谁调用了自己(假设b和c同时调用a),针对b、或c进行一些特定的处理。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注