Dump
Ogni debugger è un buon amico della funzione var_dump, che stampa dettagliatamente il
contenuto di una variabile. Sfortunatamente, in un ambiente HTML, l'output perde la formattazione e si fonde in un'unica riga, per
non parlare della sanificazione del codice HTML. In pratica, è necessario sostituire var_dump
con una funzione più
pratica. Questa è dump()
.
$arr = [10, 20.2, true, null, 'hello'];
dump($arr);
// o Debugger::dump($arr);
genera l'output:

È possibile cambiare il tema chiaro predefinito in uno scuro:
Debugger::$dumpTheme = 'dark';

Inoltre, possiamo modificare la profondità di annidamento utilizzando Debugger::$maxDepth e la lunghezza delle etichette visualizzate utilizzando Debugger::$maxLength. Valori più bassi accelereranno naturalmente Tracy.
Debugger::$maxDepth = 2; // default: 3
Debugger::$maxLength = 50; // default: 150
La funzione dump()
può anche stampare altre informazioni utili. La costante
Tracy\Dumper::LOCATION_SOURCE
aggiunge un tooltip con il percorso del punto in cui la funzione è stata chiamata.
Tracy\Dumper::LOCATION_LINK
ci fornisce un link a quella posizione. Tracy\Dumper::LOCATION_CLASS
stampa
un tooltip per ogni oggetto dumpato con il percorso del file in cui è definita la sua classe. Le costanti vengono impostate nella
variabile Debugger::$showLocation
prima di chiamare dump()
. Se vogliamo impostare più valori
contemporaneamente, li combiniamo usando l'operatore |
.
Debugger::$showLocation = Tracy\Dumper::LOCATION_SOURCE; // Imposta solo la stampa sulla posizione della chiamata della funzione
Debugger::$showLocation = Tracy\Dumper::LOCATION_CLASS | Tracy\Dumper::LOCATION_LINK; // Imposta contemporaneamente la stampa del link e il percorso della classe
Debugger::$showLocation = false; // Disattiva la stampa delle informazioni aggiuntive
Debugger::$showLocation = true; // Attiva la stampa di tutte le informazioni aggiuntive
Un'alternativa pratica a dump()
è dumpe()
(dump & exit) e bdump()
. Questo ci
permette di stampare il valore di una variabile nel pannello della Tracy Bar. Questo è molto utile, poiché i dump sono separati
dal layout della pagina e possiamo anche aggiungere un commento ad essi.
bdump([2, 4, 6, 8], 'numeri pari fino a dieci');
bdump([1, 3, 5, 7, 9], 'numeri dispari fino a dieci');
