Quiero convertir un archivo grande yaml a PHP matriz código fuente. Puedo leer el código yam y recuperar una matriz PHP, pero con var_dump ($ array) obtengo un pseudo código como salida. Me gustaría imprimir la matriz como código php válido, así que puedo copiar y pegarlo en mi proyecto y abandonar el yaml.imprimir una matriz como código
Respuesta
Está buscando var_export
.
ie: '$ string_representation = var_export ($ complex_array, TRUE);' – ErichBSchulz
Muchas gracias. – Iscariot
¿hay alguna forma de var_export con [] en lugar de array()? – Oliboy50
Puede usar var_export, serialize (con unserialize en el extremo reservado), o incluso json_encode (y use json_decode en el extremo receptor). El último tiene la ventaja de producir resultados que pueden ser procesados por cualquier cosa que pueda manejar JSON.
No sé por qué pero no pude encontrar el código satisfactorio en ninguna parte.
Lo escribió rápidamente. Avísame si encuentras algún error.
function printCode($array, $path=false, $top=true) {
$data = "";
$delimiter = "~~|~~";
$p = null;
if(is_array($array)){
foreach($array as $key => $a){
if(!is_array($a) || empty($a)){
if(is_array($a)){
$data .= $path."['{$key}'] = array();".$delimiter;
} else {
$data .= $path."['{$key}'] = \"".htmlentities(addslashes($a))."\";".$delimiter;
}
} else {
$data .= printCode($a, $path."['{$key}']", false);
}
}
}
if($top){
$return = "";
foreach(explode($delimiter, $data) as $value){
if(!empty($value)){
$return .= '$array'.$value."<br>";
}
};
return $return;
}
return $data;
}
//REQUEST
$x = array('key'=>'value', 'key2'=>array('key3'=>'value2', 'key4'=>'value3', 'key5'=>array()));
echo printCode($x);
//OUTPUT
$array['key'] = 'value';
$array['key2']['key3'] = 'value2';
$array['key2']['key4'] = 'value3';
$array['key2']['key5'] = array();
Espero que esto ayude a alguien.
- 1. Imprimir una matriz de enteros como números hexadecimales
- 2. imprimir una matriz bidimensional de cadenas como String
- 3. Imprimir una matriz 2D en C
- 4. muy bien imprimir una matriz en mathematica
- 5. Cómo imprimir una matriz peridimensional 2?
- 6. Cómo imprimir una matriz Numpy sin corchetes?
- 7. Cómo imprimir la matriz?
- 8. ASP imprimir matriz
- 9. Imprimir el código de una subrutina anónima
- 10. Imprimir una cadena como bytes hexadecimales?
- 11. imprimir los valores de una matriz (MAT) en OpenCV C++
- 12. ¿Imprimir matriz en objetivo-c?
- 13. imprimir los valores de una expresión como una cadena
- 14. ¿Cómo imprimir/registrar una matriz de cadena en Java?
- 15. Cómo imprimir código en HTML
- 16. Imprimir matriz sin corchetes y comas
- 17. Cómo imprimir una matriz en un archivo .txt en Matlab?
- 18. Imprimir la representación hexadecimal de una matriz char []
- 19. Cómo imprimir todos los valores de una matriz en Perl
- 20. representación de una matriz 2D como una matriz 1D
- 21. Cómo imprimir el objeto/matriz jquery
- 22. Pasando una matriz como argumentos, no una matriz, en PHP
- 23. Registros de Magento imprimir contenido de matriz
- 24. método genérico para imprimir todos los elementos de una matriz
- 25. cómo imprimir una matriz en la plantilla underscore.js?
- 26. Función Excel VBA para imprimir una matriz en el libro
- 27. Imprimir la estructura de una matriz sin sus contenidos?
- 28. Cualquier utilidad para imprimir matriz directamente?
- 29. Ordenar una matriz numpy como una mesa
- 30. cakephp registrar una matriz como var_dump
Por curiosidad, ¿por qué querrías abandonar el yall? Es un formato fantástico que usted y otros pueden editar a mano. :-) – Benson
Analizar un archivo YAML en cada solicitud es relativamente lento si lo compara con 'incluir' una matriz php. En mi proyecto actual, la velocidad es más importante. –