debug_print_backtrace функциясы

debug_print_backtrace функциясы ағымдағы шақырулар стекі туралы ақпаратты шығарады - яғни ағымдағы орындалу нүктесіне әкелген функциялар тізбегі. Функция мән қайтармай, нәтижені бірден шығарады. Бірінші параметр ретінде шығару форматын өзгерту үшін флагтарды көрсетуге болады, екінші параметр ретінде - шығарылатын деңгейлер санын шектеуге болады.

Синтаксис

phpdebug_print_backtrace(int $options = 0, int $limit = 0): void

Мысал

Функцияны шақырудың қарапайым мысалы:

php<?php
  function a() {
    b();
  }
  function b() {
    debug_print_backtrace();
  }
  a();
?>

Кодты орындау нәтижесі:

php#0  b() called at [test.php:4]
#1  a() called at [test.php:8]

Мысал

Шығаруды шектеу үшін limit параметрін қолдану:

php<?php
  function x() {
    y();
  }
  function y() {
    z();
  }
  function z() {
    debug_print_backtrace(0, 2);
  }
  x();
?>

Кодты орындау нәтижесі:

php#0  z() called at [test.php:9]
#1  y() called at [test.php:6]

Мысал

Шығару форматын өзгерту үшін опцияларды қолдану:

php<?php
function test1() {
  test2();
}
function test2() {
  debug_print_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS);
}
test1();
?>

Кодты орындау нәтижесі (функция аргументтерінсіз):

php#0  test2() called at [test.php:4]
#1  test1() called at [test.php:8]

Сондай-ақ қараңыз

  • debug_backtrace функциясы,
    ол стек трейсін массив түрінде қайтарады
  • error_reporting функциясы,
    ол қателер туралы есептеу деңгейін орнатады