Funcția debug_print_backtrace

Funcția debug_print_backtrace afișează informații despre stiva curentă de apeluri - secvența de funcții care a condus la punctul curent de execuție. Funcția nu returnează o valoare, ci afișează imediat rezultatul. Primul parametru poate fi folosit pentru a specifica steaguri pentru modificarea formatului de afișare, iar al doilea - pentru a limita numărul de niveluri afișate.

Sintaxă

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

Exemplu

Un exemplu simplu de apel al funcției:

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

Rezultatul executării codului:

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

Exemplu

Utilizarea parametrului limit pentru a limita afișarea:

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

Rezultatul executării codului:

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

Exemplu

Utilizarea opțiunilor pentru a modifica formatul de afișare:

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

Rezultatul executării codului (fără argumentele funcțiilor):

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

Vedeți și

  • funcția debug_backtrace,
    care returnează urma stivei sub formă de matrice
  • funcția error_reporting,
    care stabilește nivelul de raportare a erorilor