Nette Documentation Preview

syntax
Дампинг
*******

Каждый отладчик — хороший друг функции [php:var_dump], которая подробно выводит содержимое переменной. К сожалению, в среде HTML вывод теряет форматирование и сливается в одну строку, не говоря уже о санитизации HTML-кода. На практике необходимо заменить `var_dump` более удобной функцией. Этой функцией является `dump()`.

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

dump($arr);
// или Debugger::dump($arr);
```

сгенерирует вывод:

[* dump-basic.webp *]

Вы можете изменить светлую тему по умолчанию на темную:

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

[* dump-dark.webp *]

Далее мы можем изменить глубину вложенности с помощью [Debugger::$maxDepth |api:Tracy\Debugger::$maxDepth] и длину отображаемых меток с помощью [Debugger::$maxLength |api:Tracy\Debugger::$maxLength]. Меньшие значения, естественно, ускорят Tracy.

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

Функция `dump()` умеет выводить и другую полезную информацию. Константа `Tracy\Dumper::LOCATION_SOURCE` добавляет подсказку (tooltip) с путем к месту, где была вызвана функция. `Tracy\Dumper::LOCATION_LINK` предоставляет нам ссылку на это место. `Tracy\Dumper::LOCATION_CLASS` для каждого дампа объекта выводит подсказку (tooltip) с путем к файлу, в котором определен его класс. Константы устанавливаются в переменную `Debugger::$showLocation` еще до вызова `dump()`. Если мы хотим установить несколько значений одновременно, мы соединяем их с помощью оператора `|`.

```php
Debugger::$showLocation = Tracy\Dumper::LOCATION_SOURCE; // Устанавливает только вывод о месте вызова функции
Debugger::$showLocation = Tracy\Dumper::LOCATION_CLASS | Tracy\Dumper::LOCATION_LINK; // Устанавливает одновременно вывод ссылки и путь к классу
Debugger::$showLocation = false; // Отключает вывод дополнительной информации
Debugger::$showLocation = true; // Включает вывод всей дополнительной информации
```

Практической альтернативой `dump()` являются `dumpe()` (dump & exit) и `bdump()`. Последний позволяет нам вывести значение переменной в панели Tracy Baru. Это очень удобно, так как дампы отделены от макета страницы, и мы также можем разместить к ним комментарий.

```php
bdump([2, 4, 6, 8], 'четные числа до десяти');
bdump([1, 3, 5, 7, 9], 'нечетные числа до десяти');
```

[* bardump-cs.webp *]

Дампинг

Каждый отладчик — хороший друг функции var_dump, которая подробно выводит содержимое переменной. К сожалению, в среде HTML вывод теряет форматирование и сливается в одну строку, не говоря уже о санитизации HTML-кода. На практике необходимо заменить var_dump более удобной функцией. Этой функцией является dump().

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

dump($arr);
// или Debugger::dump($arr);

сгенерирует вывод:

Вы можете изменить светлую тему по умолчанию на темную:

Debugger::$dumpTheme = 'dark';

Далее мы можем изменить глубину вложенности с помощью Debugger::$maxDepth и длину отображаемых меток с помощью Debugger::$maxLength. Меньшие значения, естественно, ускорят Tracy.

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

Функция dump() умеет выводить и другую полезную информацию. Константа Tracy\Dumper::LOCATION_SOURCE добавляет подсказку (tooltip) с путем к месту, где была вызвана функция. Tracy\Dumper::LOCATION_LINK предоставляет нам ссылку на это место. Tracy\Dumper::LOCATION_CLASS для каждого дампа объекта выводит подсказку (tooltip) с путем к файлу, в котором определен его класс. Константы устанавливаются в переменную Debugger::$showLocation еще до вызова dump(). Если мы хотим установить несколько значений одновременно, мы соединяем их с помощью оператора |.

Debugger::$showLocation = Tracy\Dumper::LOCATION_SOURCE; // Устанавливает только вывод о месте вызова функции
Debugger::$showLocation = Tracy\Dumper::LOCATION_CLASS | Tracy\Dumper::LOCATION_LINK; // Устанавливает одновременно вывод ссылки и путь к классу
Debugger::$showLocation = false; // Отключает вывод дополнительной информации
Debugger::$showLocation = true; // Включает вывод всей дополнительной информации

Практической альтернативой dump() являются dumpe() (dump & exit) и bdump(). Последний позволяет нам вывести значение переменной в панели Tracy Baru. Это очень удобно, так как дампы отделены от макета страницы, и мы также можем разместить к ним комментарий.

bdump([2, 4, 6, 8], 'четные числа до десяти');
bdump([1, 3, 5, 7, 9], 'нечетные числа до десяти');