Funzione debug_print_backtrace

La funzione debug_print_backtrace stampa informazioni sullo stack delle chiamate corrente - la sequenza di funzioni che ha portato al punto di esecuzione corrente. La funzione non restituisce un valore, ma stampa immediatamente il risultato. Come primo parametro è possibile specificare flag per modificare il formato dell'output, come secondo - il limite al numero di livelli da stampare.

Sintassi

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

Esempio

Un semplice esempio di chiamata della funzione:

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

Risultato dell'esecuzione del codice:

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

Esempio

Utilizzo del parametro limit per limitare l'output:

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

Risultato dell'esecuzione del codice:

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

Esempio

Utilizzo delle opzioni per modificare il formato dell'output:

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

Risultato dell'esecuzione del codice (senza argomenti delle funzioni):

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

Vedi anche

  • la funzione debug_backtrace,
    che restituisce la traccia dello stack come un array
  • la funzione error_reporting,
    che imposta il livello di segnalazione degli errori