Я использую это прямо сейчас:
error_log(serialize(debug_backtrace()));
Но я должен каждый раз отказываться от нее. Есть ли лучший способ хранения обратных трасс?
Это должно генерировать читаемую строку:
error_log(print_r(debug_backtrace(), true));
Кроме того, debug_print_backtrace () печатает обратную трассировку как строку, и ее вывод может быть захвачен с помощью обычных функций буфера вывода:
ob_start(); debug_print_backtrace(); error_log(ob_get_clean());
$log = var_export(debug_backtrace(), true);
Затем используйте переменную $log
для входа в файл или что-то еще.
Немного уродливый, но работоспособный, я делаю это:
error_log('Identifying string so that it doesn\'t just end up as gibberish' . json_encode(debug_backtrace()));
С моей точки зрения, лучший подход заключается в использовании функции исключения:
$e = new Exception(); $e->getTraceAsString();