var_dump ilegível no Firebug quando xdebug está habilitado
-
13-09-2019 - |
Pergunta
Xdebug exibe "var_dump" em sua própria maneira com informações mais úteis, mas em Firebug é ilegível.
Eu queria saber se havia uma maneira para exibir o var_dump no Firebug para torná-lo legível sem desativar xdebug e também manter a exibição do var_dump feita por xdebug em PHP.
Exemplos de var_dump exibida no Firebug:
$test = array('id' => '42', 'name' => 'Mao');
var_dump($test);
Padrão:
array(2) {
["id"]=>
string(2) "42"
["name"]=>
string(3) "Mao"
}
Xdebug:
<pre class='xdebug-var-dump' dir='ltr'>
<b>array</b>
'id' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'42'</font> <i>(length=2)</i>
'name' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'Mao'</font> <i>(length=3)</i>
</pre>
Solução
Você pode desligar Xdebug-var_dump()
-sobrecarga, definindo xdebug.overload_var_dump
para false
. Então você pode usar var_dump()
quando você não precisa do-formatação HTML e xdebug_var_dump()
adicional sempre que necessário a saída de depuração totalmente formatado.
Mas como eu escrevi no meu comentário acima, se você estiver usando FirePHP , você pode simplesmente deixar FirePHP formatar a saída em seu console Firebug:
fb($variable, FirePHP::DUMP) // or
FB::dump('Key', $variable) // or
$firephp->dump('Key', $variable); // where $firephp is your FirePHP instance
Outras dicas
Mike B 's solução,
ini_set('xdebug.overload_var_dump', 0);
não fez trabalho com meu instalar.
Mas eu posso fazer isso para suprimir o html:
ini_set( 'html_errors' , 0 );
Configuração xdebug.overload_var_dump="0"
em php.ini resolveu o problema no meu caso.
ini_set('xdebug.overload_var_dump', 0);
não funciona aqui também. ini_set( 'html_errors' , 0 );
não funciona, mas pode ser muito lenta às vezes.
Como uma simples solução alternativa que você pode usar este:
echo var_export($this);
que é apenas 7 keypresses mais do que o var_dump normal.
Você pode usar uma alternativa:
http://raveren.github.io/kint/
Ele funciona com zero de set-up e tem muito mais recursos do que var_dump
do Xdebug de qualquer maneira.
Captura de tela: