Search code examples
phperror-handlingbacktrace

How can I save a PHP backtrace to the error log?


I'm using this right now:

error_log(serialize(debug_backtrace()));

But I have to unserialize it every time. Is there a better way to store backtraces?


Solution

  • This should generate a readable string:

    error_log(print_r(debug_backtrace(), true));
    

    Additionally, debug_print_backtrace() prints the back trace as string and its output can be captured with regular output buffer functions:

    ob_start();
    debug_print_backtrace();
    error_log(ob_get_clean());