Dumpolás
Minden debugger jó barátja a var_dump függvénynek, amely részletesen kiírja egy
változó tartalmát. Sajnos HTML környezetben a kimenet elveszíti a formázását és egyetlen sorba olvad össze, a HTML kód
tisztításáról nem is beszélve. A gyakorlatban elengedhetetlen a var_dump
helyettesítése egy ügyesebb
függvénnyel. Ez pontosan a dump()
.
$arr = [10, 20.2, true, null, 'hello'];
dump($arr);
// vagy Debugger::dump($arr);
a következő kimenetet generálja:

Az alapértelmezett világos témát sötétre változtathatja:
Debugger::$dumpTheme = 'dark';

Továbbá módosíthatjuk a beágyazási mélységet a Debugger::$maxDepth segítségével és a megjelenített stringek hosszát a Debugger::$maxLength segítségével. Az alacsonyabb értékek természetesen gyorsítják a Tracy-t.
Debugger::$maxDepth = 2; // alapértelmezett: 3
Debugger::$maxLength = 50; // alapértelmezett: 150
A dump()
függvény további hasznos információkat is ki tud írni. A Tracy\Dumper::LOCATION_SOURCE
konstans hozzáad egy tooltipet azzal az elérési úttal, ahol a függvényt hívták. A Tracy\Dumper::LOCATION_LINK
egy linket ad nekünk erre a helyre. A Tracy\Dumper::LOCATION_CLASS
minden dumpolt objektumnál kiír egy tooltipet
azzal a fájl elérési úttal, ahol az osztálya definiálva van. A konstansokat a Debugger::$showLocation
változóba állítjuk be még a dump()
hívása előtt. Ha több értéket szeretnénk egyszerre beállítani, az
|
operátorral kapcsoljuk össze őket.
Debugger::$showLocation = Tracy\Dumper::LOCATION_SOURCE; // Csak a függvényhívás helyének kiírását állítja be
Debugger::$showLocation = Tracy\Dumper::LOCATION_CLASS | Tracy\Dumper::LOCATION_LINK; // Egyszerre állítja be a link kiírását és az osztály elérési útját
Debugger::$showLocation = false; // Kikapcsolja a további információk kiírását
Debugger::$showLocation = true; // Bekapcsolja az összes további információ kiírását
A dump()
praktikus alternatívája a dumpe()
(dump & exit) és a bdump()
. Ez
lehetővé teszi számunkra, hogy egy változó értékét a Tracy Bar paneljén írjuk ki. Ez nagyon praktikus, mivel a dumpok
elkülönülnek az oldalelrendezéstől, és megjegyzést is fűzhetünk hozzájuk.
bdump([2, 4, 6, 8], 'páros számok tízig');
bdump([1, 3, 5, 7, 9], 'páratlan számok tízig');
