牛牛在线工具

Exception::getTrace()

收录 8868 个 PHP 函数,含用途说明与用法示例。

Exception::getTrace()

获取当前异常的堆栈跟踪信息

函数名称:Exception::getTrace() 适用版本:所有 PHP 版本 用法:Exception::getTrace() 方法用于获取当前异常的堆栈跟踪信息。它返回一个由堆栈帧组成的数组,每个堆栈帧都是一个关联数组,包含以下键值对: file:包含堆栈帧所在的文件名。 line:包含堆栈帧所在的行号。 function:包含堆栈帧所调用的函数或方法名。 class:如果堆栈帧是在类内部调用的,这个键将包含调用该方法的类名。 type:如果堆栈帧是在类内部调用的,这个键将为 ->,表示对象方法调用;如果是静态方法调用,键将为 ::。 args:包含传递给函数或方法的参数数组。 示例: try { // 假设发生了一个异常 throw new Exception('Something went wrong'); } catch (Exception $e) { // 获取堆栈跟踪信息 $trace = $e->getTrace(); // 遍历堆栈跟踪信息并打印每个堆栈帧的信息 foreach ($trace as $frame) { $file = $frame['file']; $line = $frame['line']; $function = isset($frame['function']) ? $frame['function'] : ''; $class = isset($frame['class']) ? $frame['class'] : ''; $type = isset($frame['type']) ? $frame['type'] : ''; $args = isset($frame['args']) ? $frame['args'] : []; echo "File: $file<br>"; echo "Line: $line<br>"; echo "Function: $function<br>"; echo "Class: $class<br>"; echo "Type: $type<br>"; echo "Args: " . implode(', ', $args) . "<br><br>"; } } 注意:Exception::getTrace() 方法必须在异常被 catch 后调用,才能获取到有关该异常的堆栈跟踪信息。