Dumping
Todo depurador é um bom amigo da função var_dump, que exibe detalhadamente
o conteúdo de uma variável. Infelizmente, no ambiente HTML, a saída perde a formatação e se mistura em uma única linha, sem
mencionar a sanitização do código HTML. Na prática, é essencial substituir var_dump
por uma função mais
inteligente. Essa função é dump()
.
$arr = [10, 20.2, true, null, 'hello'];
dump($arr);
// ou Debugger::dump($arr);
gera a saída:

Você pode alterar o tema claro padrão para escuro:
Debugger::$dumpTheme = 'dark';

Além disso, podemos alterar a profundidade de aninhamento usando Debugger::$maxDepth e o comprimento das descrições exibidas usando Debugger::$maxLength. Valores mais baixos naturalmente acelerarão o Tracy.
Debugger::$maxDepth = 2; // padrão: 3
Debugger::$maxLength = 50; // padrão: 150
A função dump()
também pode exibir outras informações úteis. A constante
Tracy\Dumper::LOCATION_SOURCE
adiciona uma dica de ferramenta (tooltip) com o caminho para o local onde a função
foi chamada. Tracy\Dumper::LOCATION_LINK
nos fornece um link para esse local.
Tracy\Dumper::LOCATION_CLASS
exibe uma dica de ferramenta para cada objeto dumpado com o caminho para o arquivo
onde sua classe está definida. As constantes são definidas na variável Debugger::$showLocation
antes de chamar
dump()
. Se quisermos definir vários valores de uma vez, nós os combinamos usando o operador |
.
Debugger::$showLocation = Tracy\Dumper::LOCATION_SOURCE; // Define apenas a exibição sobre o local da chamada da função
Debugger::$showLocation = Tracy\Dumper::LOCATION_CLASS | Tracy\Dumper::LOCATION_LINK; // Define simultaneamente a exibição do link e o caminho para a classe
Debugger::$showLocation = false; // Desativa a exibição de informações adicionais
Debugger::$showLocation = true; // Ativa a exibição de todas as informações adicionais
Uma alternativa prática para dump()
é dumpe()
(dump & exit) e bdump()
. Este
último nos permite exibir o valor de uma variável no painel da Tracy Bar. Isso é muito útil, pois os dumps são separados do
layout da página e também podemos adicionar um comentário a eles.
bdump([2, 4, 6, 8], 'números pares até dez');
bdump([1, 3, 5, 7, 9], 'números ímpares até dez');
