PHP

debug_backtrace(), или как получить стек вызова

Часть из вас сталкивалась с этой функцией, часть нет. Но вспомнить о ней нужно всем. От дебага еще никто не уходил!

Пример использования (взято с php.net)
// filename: /tmp/a.php
function a_test($str)
{
    echo "\nHi: $str";
    var_dump(debug_backtrace());
}
a_test('friend');
?>
// filename: /tmp/b.php
include_once '/tmp/a.php';
?>

Результат:
Hi: friend
array(2) {
[0]=>
array(4) {
    ["file"] => string(10) "/tmp/a.php"
    ["line"] => int(10)
    ["function"] => string(6) "a_test"
    ["args"]=>
    array(1) {
      [0] => &string(6) "friend"
    }
}
[1]=>
array(4) {
    ["file"] => string(10) "/tmp/b.php"
    ["line"] => int(2)
    ["args"] =>
    array(1) {
      [0] => string(10) "/tmp/a.php"
    }
    ["function"] => string(12) "include_once"
  }
}

Надеюсь, что все вы об этой функции знаете, но используете ее крайне редко (поскольку пишете код без ошибок и надобности в дебаге ;).

Описал ее, чтоб не забыть самому =)
Теги:
debug_backtrace, стек вызова
Добавлено: 11 Мая 2018 08:26:49 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...