函式名稱:Error::getTrace()
適用版本:>= PHP 7.0.0
用法:Error::getTrace() 方法用於獲取發生錯誤的回溯跟蹤資訊。它返回一個包含函式呼叫堆疊的陣列,可以用於除錯和錯誤追蹤。
示例:
try {
// 丟擲一個異常
throw new Exception('Something went wrong');
} catch (Error $e) {
// 獲取回溯跟蹤資訊
$trace = $e->getTrace();
// 輸出函式呼叫堆疊
foreach ($trace as $call) {
echo $call['file'] . ' (line ' . $call['line'] . '): ' . $call['function'] . '() <br>';
}
}
輸出結果類似於:
/home/user/example.php (line 8): some_function()
/home/user/example.php (line 15): some_other_function()
/home/user/example.php (line 21): {main}()
在示例中,我們首先丟擲一個異常,然後在 catch 塊中使用 Error::getTrace() 方法來獲取回溯跟蹤資訊。然後我們遍歷回溯陣列並輸出每個函式呼叫的檔名、行號和函式名稱。
請注意,這個方法只能在捕獲到錯誤物件後使用,在普通的程式碼中呼叫這個方法是無效的。此外,由於它是從 Error 類繼承的方法,所以只能在 Error 的子類中使用,而不能直接在全域性名稱空間中使用。