Qual é a diferença entre var_dump()
e print_r()
em termos de cuspir uma matriz como string?
297
A var_dump
função exibe informações estruturadas sobre variáveis / expressões, incluindo seu tipo e valor . As matrizes são exploradas recursivamente com valores recuados para mostrar a estrutura. Também mostra quais valores da matriz e propriedades do objeto são referências.
Ele print_r()
exibe informações sobre uma variável de maneira legível por seres humanos. os valores da matriz serão apresentados em um formato que mostra chaves e elementos . Notação semelhante é usada para objetos.
Exemplo:
$obj = (object) array('qualitypoint', 'technologies', 'India');
var_dump($obj)
será exibido abaixo da saída na tela.
object(stdClass)#1 (3) {
[0]=> string(12) "qualitypoint"
[1]=> string(12) "technologies"
[2]=> string(5) "India"
}
E, print_r($obj)
será exibido abaixo da saída na tela.
stdClass Object (
[0] => qualitypoint
[1] => technologies
[2] => India
)
Mais informações
Geralmente, a
print_r( )
saída é mais agradável, mais concisa e fácil de ler, também conhecida como legível por humanos, mas não pode mostrar tipos de dados.Com
print_r()
você também pode armazenar a saída em uma variável:o que
var_dump()
não pode fazer. No entanto,var_dump()
pode mostrar tipos de dados.fonte
var_dump()
mostrará o tipo da coisa e o conteúdo dela.Então você terá =>
(string)"var"
Exemplo está aqui.print_r()
apenas produzirá o conteúdo.Saída =>
"var"
Exemplo está aqui.fonte
var_dump(0.0);
que saídasfloat(0)
vsprint_r(0.0);
que saídas0
(daí levando a possível tipo de confusão) ...Se você está perguntando quando deve usar o quê, geralmente uso
print_r()
para exibir valores evar_dump()
quando tiver problemas com tipos de variáveis.fonte
var_dump
exibe informações estruturadas sobre o objeto / variável. Isso inclui tipo e valores.print_r
Matrizes semelhantes são recorrentes e recuadas.print_r
exibe informações legíveis por humanos sobre os valores com um formato que apresenta chaves e elementos para matrizes e objetos.O mais importante a ser observado é
var_dump
o tipo de saída, bem como os valores, enquantoprint_r
isso não ocorre.fonte
Diferenças significativas entre
var_dump
eprint_r
ambas as funções despejam informações sobre a variável , mas
var_dump
vários parâmetros que serão despejados, ondeprint_r
dois parâmetros podem ser extraídos, dos quais o primeiro parâmetro é a variável que você deseja despejar e o segundo é um valor booleano.var_dump
não pode retornar nenhum valor, apenas pode despejar / imprimir os valores em que, como print_r, pode retornar as informações da variável se definirmos o segundo parâmetroprint_r
como true . O valor retornado deprint_r
estará no formato de sequência .As informações impressas por
print_r
são muito mais em formato legível, onde sãovar_dump
impressos os valores brutos.print_r
A função pode ser usada em muitos contextos, onde tambémvar_dump
pode ser usada para fins de depuração, principalmente porque não pode retornar valor.fonte
vardump
leva um ou mais argumentos e cada um será descartado.ob_start(); var_dump($var); $dump=ob_get_clean();
Eu recomendaria, adicionalmente, colocar a saída de var_dump () ou printr em uma tag pré ao enviar para um navegador.
Dará um resultado mais legível.
fonte
var_dump($var)
mostra detalhes detalhados, fornecendo detalhes adicionais defonte
Com matrizes grandes, print_r pode mostrar muito mais informações do que as úteis. Você pode truncá-lo assim, mostrando os primeiros 2.000 caracteres ou quantos você precisar.
fonte
var_dump (): -
Exemplo: -
resultado :-
print_r (): -
Exemplo: -
Resultado:-
fonte
ob_start(); var_dump($var); $dump=ob_get_clean();
print_r () e var_dump () são funções de depuração de matriz usadas no PHP para fins de depuração. A função print_r () retorna as chaves da matriz e seus membros como Matriz ([chave] = valor), enquanto a função var_dump () retorna a lista de matrizes com suas chaves de matriz com tipo e comprimento de dados, bem como, por exemplo, Matriz (comprimento da matriz) {[0] = string (1) 'a'}.
fonte
Podemos passar vários parâmetros com var_dump como:
fonte