ver var_export var_dump print español completo _post php xdebug

var_dump - var_export php



Cómo obtener xdebug var_dump para mostrar el objeto completo/matriz (6)

Estoy usando xdebug (php_xdebug-2.1.2-5.3-vc9.dll) en WAMP . Cuando uso var_dump en un objeto grande o variable, no muestra la variable completa.

array ''node'' => array ''my_form'' => array ''form'' => array ...

Sin xdebug se muestra como se debe esperar. Miré la documentación pero no vi una solución. ¿Alguien sabe cómo puedo arreglar esto para que xdebug var_dump muestre el objeto completo ?


Ahora esto es tarde pero podría ser de alguna utilidad:

echo "<pre>"; print_r($array); echo "</pre>";


Estas son variables configurables en php.ini:

; with sane limits xdebug.var_display_max_depth = 10 xdebug.var_display_max_children = 256 xdebug.var_display_max_data = 1024 ; with no limits ; (maximum nesting is 1023) xdebug.var_display_max_depth = -1 xdebug.var_display_max_children = -1 xdebug.var_display_max_data = -1

Por supuesto, estos también pueden configurarse en tiempo de ejecución a través de ini_set() , útil si no desea modificar php.ini y reiniciar su servidor web, pero necesita inspeccionar rápidamente algo más profundamente.

ini_set(''xdebug.var_display_max_depth'', ''10''); ini_set(''xdebug.var_display_max_children'', ''256''); ini_set(''xdebug.var_display_max_data'', ''1024'');

Los ajustes de Xdebug se explican en la documentación oficial .


Me gustaría recomendar var_export($array) - no muestra tipos, pero genera una sintaxis que puedes usar en tu código :)


O puedes usar una alternativa:

https://github.com/kint-php/kint

Funciona con la configuración de cero y tiene muchas más funciones que el var_dump de Xdebug de todos modos. Para evitar el límite anidado sobre la marcha con Kint, solo use

+d( $variable ); // append `+` to the dump call


Sé que este es un post muy viejo, pero pensé que esto todavía podría ser útil.

Si se siente cómodo leyendo el formato json, puede reemplazar su var_dump con:

return json_encode($myvar);

He estado usando esto para ayudar a solucionar problemas de un servicio que he estado construyendo y que tiene algunos arreglos profundamente anidados. Esto devolverá todos los niveles de su matriz sin truncar nada o requerir que cambie su archivo php.ini.

Además, dado que los datos json_encoded son una cadena, significa que puede escribirlos en el registro de errores fácilmente

error_log(json_encode($myvar));

Probablemente no sea la mejor opción para cada situación, ¡pero es una opción!