PHP: Cómo escribir la Salida de var_dump() en String
Pregunta de Invitado | 26/06/2021 a las 23:38
Para mostrar el contenido de una variable PHP, simplemente puede usar la función var_dump(). Por ejemplo, puede escribir "var_dump($array);" para mostrar el contenido de la matriz $array en PHP.
Desafortunadamente, el resultado de var_dump() siempre se escribe directamente en la página web. Con esto, no es posible almacenar el resultado en alguna variable de cadena / string para procesarlo más o más tarde.
Sin embargo, estoy buscando una función que pueda ayudarme a lograrlo de alguna manera. Entonces, ¿hay alguna posibilidad de ejecutar algo como var_dump() y guardar el resultado en una variable (una cadena / string)?
Temas Relacionados
PHP: Determinar el Número de Semana
Tutorial | 0 Comentarios
jQuery: Leer y Cambiar los Valores de los Atributos Data
Tutorial | 0 Comentarios
Lazarus: Cargar Archivo como Array de Bytes y Guardar Array de Bytes como Archivo
Tutorial | 0 Comentarios
PHP: Guardar Resultado de MySQL en Array
Información | 0 Comentarios
JavaScript: window.location como String
Información | 0 Comentarios
Delphi/Lazarus: Mostrar Array de Bytes como Cadena de Valores HEX
Consejo | 0 Comentarios
Delphi/Lazarus: Mostrar Fecha y Hora actuales
Consejo | 0 Comentarios
Aviso Importante
Por favor tenga en cuenta: Las contribuciones publicadas en askingbox.com son contribuciones de los usuarios y no deben reemplazar el asesoramiento profesional. No son verificados por independientes y no reflejan necesariamente la opinión de askingbox.com. Aprende más.
Participar
Haga su propia pregunta o escriba su propio artículo en askingbox.com. He aquí cómo.
Con el uso de la función print_r() puede hacer lo que quiera. Solo tiene que pasar "true" como segundo parámetro a la función y print_r() ya no imprimirá los resultados directamente. En su lugar, devolverá el resultado como una cadena:
Tenga en cuenta que la información proporcionada por print_r() no es tan detallada como la información que proviene de var_dump(), pero tal vez, esto pueda ayudarlo.
27/06/2021 a las 17:47
Si desea tener exactamente la misma salida que la proporcionada por var_dump(), puede usar output buffering (búfer de salida):
Con ob_start(), se inicia el output buffering. Después de eso, la salida de su secuencia de comandos ya no se enviará al navegador. En cambio, se almacena en caché. Cada salida de cada comando que ejecutará después de ob_start(), se almacenará en el búfer. Entonces, por ejemplo, también con la salida de var_dump(). Luego, puede leer en el búfer almacenado con ob_get_clean() y puede guardarlo en cualquier variable.
Teóricamente, puede escribir su propia función para manejar esto:
Después de declarar esta función, puede simplemente llamar a la función con su variable para obtener el resultado var_dump como una cadena.
27/06/2021 a las 19:18
Alternativamente, también quiero sugerir la función var_export. Esta función funciona de manera similar a print_r y devuelve un código PHP válido que describe la variable pasada.
Similar a print_r, también puede pasar "true" como segundo parámetro para obtener el resultado devuelto como string.
28/06/2021 a las 15:12
Creo que la forma clásica no debe quedar sin mencionar. También puede generar el contenido de la matriz a mano:
Es cierto que, hasta ahora, todas las demás soluciones sugeridas son mucho más simples que eso.
28/06/2021 a las 21:38