2013-10-28 59 views

回答

15

使用其他功能。 debug_backtrace()返回一個數組,你可以通過,格式環路和保存:

$data = debug_backtrace(); 

或者使用輸出緩衝的格式化輸出字符串:

ob_start(); 
debug_print_backtrace(); 
$data = ob_get_clean(); 
+0

謝謝! :)的作品 – phip1611

5

這是可能的,甚至更少的代碼來做到這一點,其實。避免與緩衝的開銷......

$error_string = (new Exception)->getTraceAsString(); 

這使你完全一樣的輸出debug_print_backtrace()存儲到$ error_string還。

如果你想獲得更有價值的堆棧跟蹤(行號,本地對象增值經銷商等)的更多信息,請...

$error_string = print_r($e->getTrace(), true); 
0

這是用於記錄的目的已經足夠了:

$this->log(print_r(debug_backtrace(), true)); 
相關問題