var_dump illeggibile in Firebug quando è abilitata xdebug
-
13-09-2019 - |
Domanda
Xdebug display "var_dump" a modo suo, con le informazioni più utili, ma a Firebug è illeggibile.
Mi chiedevo se ci fosse un modo per visualizzare la var_dump in Firebug per renderlo leggibile senza disabilitare xdebug e anche mantenere la visualizzazione del var_dump fatta da xdebug in PHP.
Esempi di var_dump visualizzata in Firebug:
$test = array('id' => '42', 'name' => 'Mao');
var_dump($test);
default
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>
Soluzione
È possibile disattivare Xdebug-var_dump()
-sovraccarico impostando xdebug.overload_var_dump
a false
. Quindi è possibile utilizzare var_dump()
quando non è necessario l'ulteriore HTML-formattazione e xdebug_var_dump()
quando si richiede un output di debug completamente formattato.
Ma, come ho scritto nel mio commento di cui sopra, se si sta utilizzando FirePHP , si può semplicemente lasciare FirePHP formattare l'output nella console Firebug:
fb($variable, FirePHP::DUMP) // or
FB::dump('Key', $variable) // or
$firephp->dump('Key', $variable); // where $firephp is your FirePHP instance
Altri suggerimenti
soluzione Mike B s ',
ini_set('xdebug.overload_var_dump', 0);
non ha funzionato con la mia installazione.
Ma posso fare questo a reprimere il codice html:
ini_set( 'html_errors' , 0 );
Impostazione xdebug.overload_var_dump="0"
in php.ini risolto il problema nel mio caso.
ini_set('xdebug.overload_var_dump', 0);
non funziona neanche qui. ini_set( 'html_errors' , 0 );
funziona, ma può essere molto lento a volte.
Come semplice soluzione è possibile utilizzare questo:
echo var_export($this);
Il che è a soli 7 tasti premuti più rispetto al normale var_dump.
È possibile utilizzare in alternativa:
http://raveren.github.io/kint/
Funziona con lo zero set-up e ha molto più caratteristiche che var_dump
di Xdebug in ogni caso.
Cattura schermo: