¿Cómo puedo analizar el resultado de var_dump
en PHP para crear una matriz?¿Cómo crear una matriz a partir de la salida de var_dump en PHP?
Respuesta
Uso var_export si desea una representación que es también válida de PHP
$a = array (1, 2, array ("a", "b", "c"));
$dump=var_export($a, true);
echo $dump;
mostrará
array (
0 => 1,
1 => 2,
2 =>
array (
0 => 'a',
1 => 'b',
2 => 'c',
),
)
Para revertir esta situación en una matriz, se puede utilizar eval, por ejemplo,
eval("\$foo=$dump;");
var_dump($foo);
No está seguro de qué que se quiere hacer esto sin embargo. Si desea almacenar una estructura de datos PHP en algún lugar y luego volver a crearla, consulte serialize() y unserialize() que son más adecuados para esta tarea.
Esto es INCORRECTO. No produce una matriz, solo hace $ foo una cadena, que es igual a $ dump, que también es una cadena, que debe ser analizada. –
Realmente no está mal. Intentalo. http://codepad.viper-7.com/7ATm27 –
No, no funciona. Cuando tomo la cadena de salida, comente las dos primeras líneas y establezco $ dump en esta cadena de salida (wither html o texto), obtengo un error de sintaxis. Por lo tanto, es diferente usar una variable var_export-ed y solo tener una cadena ya var_dump-ed. – Seika85
No puede. var_dump
solo muestra texto pero no devuelve nada.
¿Qué tal uno que tenga una cadena de var_dump a través de la copia antigua de goold paste? (Sé que las personas que copian pegan var_dumps enormes en archivos de texto y me envían esos archivos de texto.) – Seika85
@ Seika85: Puede indicarles que utilicen el búfer de salida para obtener el resultado como una cadena. Pero a los fines de esta pregunta, este sigue siendo un "No" cuando preguntaron acerca de cómo obtener una matriz. – Joey
Quizás esté buscando var_export
que le dará una expresión PHP válida del valor aprobado.
acaba de editar su respuesta pensando que era mía! ¡lo siento! –
Quizás esté intentando convertir un objeto a una matriz? http://www.phpro.org/examples/Convert-Object-To-Array-With-PHP.html
var_export
crea el código PHP, que se puede ejecutar a través de la eval
.
Pero me pregunto, ¿cuál es su idea?
Tuve un problema similar: un script de larga ejecución producía al final un vardump de gran matriz. Tuve que analizarlo de alguna manera para analizarlo más. Mi solución fue la siguiente:
cat log.stats |
sed 's/\[//g' |
sed 's/\]//g' |
sed -r 's/int\(([0-9]+)\)/\1,/g' |
sed 's/\}/\),/g' |
sed -r 's/array\([0-9]+\) \{/array(/g' >
log.stats.php
buena respuesta, el único problema es si tiene valores que contengan cadenas ... para que no se vean envueltos por '' – WonderLand
Definitivamente fue solo un truco rápido que funcionó para mi situación específica. En general, var_dump es horrible de analizar, así que siempre que sea posible utilizo algo más (en su mayoría json_encode). Tienes razón en que las cuerdas causarían problemas. Enormes problemas si contienen barras o comillas. Moderado si contiene algo que a su vez se ve como salida de volcado var (=>, [8] o int (12)) :) – qbolec
- 1. Cómo crear una matriz Haskell a partir de una función
- 2. Cómo crear una matriz a partir de un archivo CSV utilizando PHP y la función fgetcsv
- 3. ¿Cómo crear una tabla HTML a partir de una matriz PHP?
- 4. ¿Cómo puedo crear una matriz a partir de los valores de la clave de otra matriz?
- 5. Pregunta sobre la salida var_dump
- 6. Crear una matriz diagonal dispersa a partir de la fila de una matriz dispersa
- 7. Crear un hash a partir de una matriz de claves
- 8. cakephp registrar una matriz como var_dump
- 9. php var_dump() vs print_r()
- 10. Eliminar valores cero a partir de una matriz PHP
- 11. Crear una matriz de combinaciones únicas a partir de una matriz de cadenas
- 12. ¿Cómo creo una matriz numpy a partir de una cadena?
- 13. Crear una matriz a partir de propiedades de objetos en otra matriz
- 14. ¿Cuál es la mejor manera de crear una matriz secundaria a partir de una matriz existente en C++?
- 15. ¿Cómo puedo convertir la lista de parámetros de una función de PHP a una matriz asociativa?
- 16. Salida de matriz Mysql en PHP
- 17. PHP: colores en var_dump (Ubuntu)
- 18. Crear URL a partir de una cadena
- 19. conceptos básicos mapply? - cómo crear una matriz a partir de dos vectores y una función
- 20. PHP - Crear una matriz de cadena
- 21. ¿Cómo asigno la salida de un comando a una matriz?
- 22. Cómo crear un InputStream a partir de una matriz de cadenas
- 23. Cómo crear objetos jQuery a partir de una matriz de objetos jQuery?
- 24. ¿La mejor manera de crear una matriz NumPy a partir de un diccionario?
- 25. ¿Cómo crear una matriz a partir del vector devuelto por la función rep()?
- 26. Manera pitónica de crear una matriz numpy a partir de una lista de matrices numpy
- 27. Crear menú PyQt a partir de una lista de cadenas
- 28. ¿Es posible crear una matriz de una dimensión a partir de dos usando LINQ?
- 29. Crear matriz de PHP desde la columna de MySQL
- 30. Cálculo de una matriz de transformación 2D a partir de una matriz 2D inicial y resultante
'var_dump (array ($ var))'? – Fragsworth