Eu tenho um $_GET[]
conjunto de variáveis de consulta simples para mostrar dados de teste ao extrair consultas do banco de dados.
<?php if($_GET['test']): ?>
<div id="test" style="padding: 24px; background: #fff; text-align: center;">
<table>
<tr style="font-weight: bold;"><td>MLS</td></tr>
<tr><td><?php echo KEY; ?></td></tr>
<tr style="font-weight: bold;"><td>QUERY</td></tr>
<tr><td><?php echo $data_q; ?></td></tr>
<tr style="font-weight: bold;"><td>DATA</td></tr>
<tr><td><?php var_dump($data); ?></td></tr>
</table>
</div>
<?php endif; ?>
Quando eu faço var_dump
, como esperado, é essa grande cadeia de caracteres que é toda esmagada. Existe uma maneira de adicionar quebras de linha pelo menos para isso ou exibir a var_dump
de uma maneira que seja mais legível? Estou aberto a sugestões do jQuery sobre como manipular a string depois que ela for publicada.
echo '<pre>'; var_dump($data); echo '</pre>'
.print_r($data)
. php.net/manual/en/function.print-r.phpRespostas:
Eu realmente amo
var_export()
. Se você gosta de copiar / colar código, tente:Ou até algo assim para destacar a sintaxe da cor:
Você pode fazer o mesmo com
print_r()
. Paravar_dump()
você, você só precisa adicionar as<pre>
tags:fonte
echo
,var_export
ehighlight_string
são todas as funções php e necessidade de estar dentro de um<?php
?>
bloco. Sim, mesmo que a linha de função destacar_cota tenha um par <? Php?> Dentro, é necessário um par também no exterior.var_dump(highlight_string("<?\n". var_export($data, true)));
Experimente a extensão xdebug para php.
Exemplo:
Saídas:
fonte
extension=php_xdebug.dll
, nãozend_extension=/some/really/long/specific/path/xdebug.so
Usar elemento HTML pré-formatado
fonte
Fiz uma adição às respostas do @AbraCadaver. Eu incluí um script javascript que excluirá a tag de início e fechamento do php. Teremos um despejo limpo e bonito.
Pode ser alguém assim também.
Resultado antes:
Resultado Após:
Agora não temos a tag inicial e final do php
fonte
Se tudo estiver "esmagado", você poderá experimentar o velho "visualizar código-fonte". Às vezes, os despejos, mensagens e exceções parecem ser apenas uma longa sequência quando acontece que as quebras de linha simplesmente não são exibidas. Especialmente árvores XML.
Como alternativa, uma vez eu criei uma pequena ferramenta chamada InteractiveVarDump para esse propósito. Certamente tem seus limites, mas também pode ser muito conveniente às vezes. Mesmo que tenha sido projetado com o PHP 5 em mente.
fonte
A melhor e mais fácil maneira de obter var_dump é usar xDebug (deve ter para qualquer php dev)
No console:
apt-get install php-xdebug
depois disso, você deve abrir o php.ini (depende de qual pilha você usa), pois é /etc/php/7.0/fpm/php.iniProcurar por
display_errors
definir o mesmo ->
display_errors = On
Verifique
html_errors
no mesmo arquivo um pouco abaixo, também deve serOn
Salvar e sair
Depois de aberto
/etc/php/7.0/fpm/conf.d/20-xdebug.ini
E adicione no final: `` `xdebug.cli_color = 1
`` Salve e saia.
Muitas outras opções e documentação disponíveis para o xdebug podem ser encontradas aqui.
https://xdebug.org/docs/
Boa sorte e divirta-se !!!
Resultado
fonte
Você poderia usar este em
debugVar()
vez devar_dump()
Confira: https://github.com/E1NSER/php-debug-function
fonte
Aqui está minha função de ter um bonito var_dump. Combinado com o Xdebug , ajuda muito a ter uma melhor visão do que estamos descartando.
Melhorei um pouco a exibição do Xdebug (dê um pouco de espaço, separador entre valores, envolva variáveis longas, etc.).
Quando você chama a função, pode definir um título, um plano de fundo, uma cor de texto para distinguir todo o seu var_dump em uma página.
Ou não ;)
fonte
fonte
Parece que não tenho representante suficiente para fechar isso como duplicado, mas é um caso alguém possa fazer isso. Postei a mesma coisa em Uma alternativa Var_dump mais bonita / informativa em PHP?mas, para economizar tempo, copio / colo aqui também:
Eu tive que adicionar outra resposta aqui, porque eu realmente não queria seguir as etapas das outras soluções. É extremamente simples e não requer extensões, inclui etc e é o que eu prefiro. É muito fácil e muito rápido.
Primeiro, basta json_encode a variável em questão:
Copie o resultado obtido no JSON Editor em http://jsoneditoronline.org/, basta copiá-lo no painel esquerdo, clique em Copiar> e ele imprime o JSON em um formato de árvore muito bom.
Para cada um deles, mas espero que isso ajude alguns outros a terem mais uma boa opção! :)
fonte
Existe um pacote Symfony para isso: https://symfony.com/doc/current/components/var_dumper.html .
fonte
Eu escrevi uma função (
debug_display
) que pode imprimir, matrizes, objetos e informações de arquivos de maneira bonita.fonte
Usar
Isso deve funcionar ^^
fonte