Nette Documentation Preview

syntax
Volcado (Dumping)
*****************

Todo depurador es un buen amigo de la función [php:var_dump], que imprime detalladamente el contenido de una variable. Desafortunadamente, en el entorno HTML, la salida pierde su formato y se fusiona en una sola línea, sin mencionar la sanitización del código HTML. En la práctica, es necesario reemplazar `var_dump` con una función más inteligente. Esa es precisamente `dump()`.

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

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

genera la salida:

[* dump-basic.webp *]

Puedes cambiar el tema claro predeterminado a oscuro:

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

[* dump-dark.webp *]

Además, podemos cambiar la profundidad de anidamiento usando [Debugger::$maxDepth |api:Tracy\Debugger::$maxDepth] y la longitud de las descripciones mostradas usando [Debugger::$maxLength |api:Tracy\Debugger::$maxLength]. Valores más bajos naturalmente acelerarán Tracy.

```php
Debugger::$maxDepth = 2; // por defecto: 3
Debugger::$maxLength = 50; // por defecto: 150
```

La función `dump()` también puede imprimir otra información útil. La constante `Tracy\Dumper::LOCATION_SOURCE` añade un tooltip con la ruta al lugar donde se llamó la función. `Tracy\Dumper::LOCATION_LINK` nos proporciona un enlace a ese lugar. `Tracy\Dumper::LOCATION_CLASS` muestra, para cada objeto volcado, un tooltip con la ruta al archivo donde está definida su clase. Las constantes se establecen en la variable `Debugger::$showLocation` antes de llamar a `dump()`. Si queremos establecer varios valores a la vez, los combinamos usando el operador `|`.

```php
Debugger::$showLocation = Tracy\Dumper::LOCATION_SOURCE; // Establece solo la impresión sobre el lugar de la llamada a la función
Debugger::$showLocation = Tracy\Dumper::LOCATION_CLASS | Tracy\Dumper::LOCATION_LINK; // Establece simultáneamente la impresión del enlace y la ruta a la clase
Debugger::$showLocation = false; // Desactiva la impresión de información adicional
Debugger::$showLocation = true; // Activa la impresión de toda la información adicional
```

Una alternativa práctica a `dump()` es `dumpe()` (dump & exit) y `bdump()`. Este último nos permite imprimir el valor de una variable en el panel de la Tracy Bar. Esto es muy útil, ya que los volcados están separados del diseño de la página y también podemos añadirles un comentario.

```php
bdump([2, 4, 6, 8], 'números pares hasta diez');
bdump([1, 3, 5, 7, 9], 'números impares hasta diez');
```

[* bardump-cs.webp *]

Volcado (Dumping)

Todo depurador es un buen amigo de la función var_dump, que imprime detalladamente el contenido de una variable. Desafortunadamente, en el entorno HTML, la salida pierde su formato y se fusiona en una sola línea, sin mencionar la sanitización del código HTML. En la práctica, es necesario reemplazar var_dump con una función más inteligente. Esa es precisamente dump().

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

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

genera la salida:

Puedes cambiar el tema claro predeterminado a oscuro:

Debugger::$dumpTheme = 'dark';

Además, podemos cambiar la profundidad de anidamiento usando Debugger::$maxDepth y la longitud de las descripciones mostradas usando Debugger::$maxLength. Valores más bajos naturalmente acelerarán Tracy.

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

La función dump() también puede imprimir otra información útil. La constante Tracy\Dumper::LOCATION_SOURCE añade un tooltip con la ruta al lugar donde se llamó la función. Tracy\Dumper::LOCATION_LINK nos proporciona un enlace a ese lugar. Tracy\Dumper::LOCATION_CLASS muestra, para cada objeto volcado, un tooltip con la ruta al archivo donde está definida su clase. Las constantes se establecen en la variable Debugger::$showLocation antes de llamar a dump(). Si queremos establecer varios valores a la vez, los combinamos usando el operador |.

Debugger::$showLocation = Tracy\Dumper::LOCATION_SOURCE; // Establece solo la impresión sobre el lugar de la llamada a la función
Debugger::$showLocation = Tracy\Dumper::LOCATION_CLASS | Tracy\Dumper::LOCATION_LINK; // Establece simultáneamente la impresión del enlace y la ruta a la clase
Debugger::$showLocation = false; // Desactiva la impresión de información adicional
Debugger::$showLocation = true; // Activa la impresión de toda la información adicional

Una alternativa práctica a dump() es dumpe() (dump & exit) y bdump(). Este último nos permite imprimir el valor de una variable en el panel de la Tracy Bar. Esto es muy útil, ya que los volcados están separados del diseño de la página y también podemos añadirles un comentario.

bdump([2, 4, 6, 8], 'números pares hasta diez');
bdump([1, 3, 5, 7, 9], 'números impares hasta diez');