¿Cuál es la diferencia entre var_dump
, var_export
y print_r
?Diferencia entre var_dump, var_export e print_r
Respuesta
var_dump es para propósitos de depuración. var_dump
siempre imprime el resultado.
// var_dump(array('', false, 42, array('42')));
array(4) {
[0]=> string(0) ""
[1]=> bool(false)
[2]=> int(42)
[3]=> array(1) {[0]=>string(2) "42")}
}
print_r es para propósitos de depuración, también, pero no incluye el tipo del miembro. Es una buena idea utilizarla si conoce los tipos de elementos en su matriz, pero puede ser engañosa de lo contrario. print_r
de forma predeterminada imprime el resultado, pero permite devolverlo como una cadena utilizando el parámetro $return
opcional.
Array (
[0] =>
[1] =>
[2] => 42
[3] => Array ([0] => 42)
)
var_export impresiones válida de PHP. Útil si calculó algunos valores y quiere los resultados como una constante en otro script. Tenga en cuenta que var_export
no puede manejar ciclos de referencia/matrices recursivas, mientras que var_dump
y print_r
cheque por éstos. var_export
de forma predeterminada imprime el resultado, pero permite devolverlo como una cadena utilizando el parámetro $return
opcional.
array (
0 => '',
2 => false,
2 => 42,
3 => array (0 => '42',),
)
personalmente, creo que var_export
es el mejor compromiso de concisa y precisa.
Tenga en cuenta que 'var_export', debido a su naturaleza, morirá una muerte recursiva horrible en, bueno, arreglos recursivos. 'print_r' y' var_dump' (aunque no estoy seguro de esto último, ya que generalmente no lo uso) no tienen ese problema. Así que no 'var_export ($ _ GLOBALS);', por ejemplo (que se contiene a sí mismo). :) – pinkgothic
este comentario es importante leer, y realmente debe ser añadido a la respuesta – ftrotter
@ftrotter Siempre pensé que el comentario explicaría también que la curiosidad, pero hay que ir, añadido una breve nota para la respuesta. – phihag
var_dump
y var_export
refieren como esto (de la manual)
var_export() obtiene estructurado información sobre la variable dada. Es similar a var_dump() con una excepción: la representación regresado es válida de PHP.
Se diferencian de print_r
que var_dump
exporta más información, como el tipo de datos y el tamaño de los elementos.
- 1. php var_dump() vs print_r()
- 2. difícil de entender print_r/var_dump para el objeto
- 3. Ocultar campos de clases específicas de print_r o var_dump
- 4. diferencia entre SDK e IDE
- 5. Diferencia entre initWithNibName e initWithCoder
- 6. No var_dump() ni print_r() mostrarán información legible ... pero la misma salida confusa. ¿Por qué?
- 7. ¿Diferencia entre void main e int main?
- 8. Diferencia entre default-initialize e value-initialize?
- 9. ¿Hay alguna diferencia entre RPC e IPC?
- 10. Diferencia entre EXISTS e IN en SQL?
- 11. ¿Diferencia entre long e int en C#?
- 12. Diferencia entre devoluciones e impresión en python?
- 13. diferencia entre puntos numpy() e interior()
- 14. Diferencia entre if -e y si -f
- 15. ¿La diferencia entre sys.stdout.write e print?
- 16. Diferencia entre cvMat, Mat e IpImage
- 17. ¿Diferencia entre servicio e hilo en Android?
- 18. ¿Diferencia entre paquete e instalación de gema?
- 19. ¿Diferencia entre nueva e inicialización en Smalltalk?
- 20. Diferencia entre objetos mutables e inmutables
- 21. ¿Cuál es el equivalente de JavaScript de var_dump o print_r en PHP?
- 22. ¿Hay un equivalente print_r o var_dump en Ruby/Ruby on Rails?
- 23. php var_dump ($ object) o print_r ($ object) en un archivo de registro
- 24. Java: print_r?
- 25. cakephp registrar una matriz como var_dump
- 26. ¿Cuál es la diferencia entre require e include con php?
- 27. ¿Cuál es la diferencia entre IEnumerator e IEnumerable?
- 28. ¿Cuál es la diferencia entre AxInterop e Interop?
- 29. ¿Cuál es la diferencia entre identidad e igualdad en OOP?
- 30. ¿Cuál es la diferencia entre IDREF e IDREFS en XSD?
A veces es más fácil pedir a alguien más para entender mejor a continuación, leer manuales. –
@ Your Common Sense S.O. las respuestas son a menudo más claras, más concisas, procesables y, básicamente, siempre más fáciles de referencia que el manual de PHP. –