Nette Documentation Preview

syntax
Dumpolás
********

Minden debugger jó barátja a [php: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()`.

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

dump($arr);
// vagy Debugger::dump($arr);
```

a következő kimenetet generálja:

[* dump-basic.webp *]

Az alapértelmezett világos témát sötétre változtathatja:

```php
Debugger::$dumpTheme = 'dark';
```

[* dump-dark.webp *]

Továbbá módosíthatjuk a beágyazási mélységet a [Debugger::$maxDepth |api:Tracy\Debugger::$maxDepth] segítségével és a megjelenített stringek hosszát a [Debugger::$maxLength |api:Tracy\Debugger::$maxLength] segítségével. Az alacsonyabb értékek természetesen gyorsítják a Tracy-t.

```php
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.

```php
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.

```php
bdump([2, 4, 6, 8], 'páros számok tízig');
bdump([1, 3, 5, 7, 9], 'páratlan számok tízig');
```

[* bardump-cs.webp *]

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');