Dump

Chaque débogueur est un bon ami de la fonction var_dump, qui affiche en détail le contenu d'une variable. Malheureusement, dans un environnement HTML, l'affichage perd son formatage et se fond en une seule ligne, sans parler de l'assainissement du code HTML. En pratique, il est nécessaire de remplacer var_dump par une fonction plus pratique. C'est précisément dump().

$arr = [10, 20.2, true, null, 'hello'];

dump($arr);
// ou Debugger::dump($arr);

génère la sortie :

Vous pouvez changer le thème clair par défaut en thème sombre :

Debugger::$dumpTheme = 'dark';

Nous pouvons également modifier la profondeur d'imbrication à l'aide de Debugger::$maxDepth et la longueur des descriptions affichées à l'aide de Debugger::$maxLength. Des valeurs plus basses accéléreront naturellement Tracy.

Debugger::$maxDepth = 2; // default: 3
Debugger::$maxLength = 50; // default: 150

La fonction dump() peut également afficher d'autres informations utiles. La constante Tracy\Dumper::LOCATION_SOURCE ajoute une infobulle avec le chemin vers l'endroit où la fonction a été appelée. Tracy\Dumper::LOCATION_LINK nous fournit un lien vers cet endroit. Tracy\Dumper::LOCATION_CLASS affiche pour chaque objet dumpé une infobulle avec le chemin vers le fichier où sa classe est définie. Les constantes sont définies dans la variable Debugger::$showLocation avant l'appel de dump(). Si nous voulons définir plusieurs valeurs à la fois, nous les combinons à l'aide de l'opérateur |.

Debugger::$showLocation = Tracy\Dumper::LOCATION_SOURCE; // Définit uniquement l'affichage de l'endroit de l'appel de la fonction
Debugger::$showLocation = Tracy\Dumper::LOCATION_CLASS | Tracy\Dumper::LOCATION_LINK; // Définit à la fois l'affichage du lien et le chemin vers la classe
Debugger::$showLocation = false; // Désactive l'affichage des informations supplémentaires
Debugger::$showLocation = true; // Active l'affichage de toutes les informations supplémentaires

Une alternative pratique à dump() est dumpe() (dump & exit) et bdump(). Ce dernier nous permet d'afficher la valeur d'une variable dans le panneau de la barre Tracy. C'est très pratique, car les dumps sont séparés de la mise en page de la page et nous pouvons également y ajouter un commentaire.

bdump([2, 4, 6, 8], 'nombres pairs jusqu\'à dix');
bdump([1, 3, 5, 7, 9], 'nombres impairs jusqu\'à dix');