Tengo que generar un archivo xml dinámicamente en tiempo de ejecución. Por favor, ayúdame a generar el archivo XML a continuación dinámicamente usando PHP.
<?xml version="1.0" encoding="UTF-8"?>
<xml>
<track>
<path>song1.mp3</path>
<title>Track 1 - Track Title</title>
</track>
<track>
<path>song2.mp3</path>
<title>Track 2 - Track Title</title>
</track>
<track>
<path>song3.mp3</path>
<title>Track 3 - Track Title</title>
</track>
<track>
<path>song4.mp3</path>
<title>Track 4 - Track Title</title>
</track>
<track>
<path>song5.mp3</path>
<title>Track 5 - Track Title</title>
</track>
<track>
<path>song6.mp3</path>
<title>Track 6 - Track Title</title>
</track>
<track>
<path>song7.mp3</path>
<title>Track 7 - Track Title</title>
</track>
<track>
<path>song8.mp3</path>
<title>Track 8 - Track Title</title>
</track>
Respuestas:
Yo usaría SimpleXMLElement .
fuente
<?xml version="1.0" encoding="WHATEVER_IT_IS"?>
instrucciones de procesamiento. Creo que SimpleXMLElement hará lo correcto: convertir todos los valores de cadena consultados a su mb_internal_encoding.$xml = new SimpleXMLElement("<?xml version=\"1.0\" encoding=\"utf-8\" ?><Person></Person>");
Para crear un documento XML en PHP, debe instanciar una clase DOMDocument, crear nodos secundarios y agregar estos nodos en la rama correcta del árbol de documentos.
Como referencia, puede leer http://it.php.net/manual/en/book.dom.php
Ahora haremos un recorrido rápido por el código a continuación.
Estos son los conceptos básicos, puede crear y agregar un nodo en solo una línea (13, por ejemplo), puede hacer muchas otras cosas con la api dom. Es tu decision.
Editar: solo una pista más: la principal ventaja de usar un documento xml (el documento dom o el simplexml) en lugar de imprimir el xml, es que el xmltree se puede buscar con la consulta xpath
fuente
$domtree->save('mypath/xmlfile.xml');
?$domtree->formatOutput = true;
para que la salida sea bonita :)Content-Disposition: attachment
e imprime el resultado saveXml. También puede sugerir un nombre de archivo.Una forma fácil de hacer esto es:
guárdelo como .php
fuente
Con FluidXML puede generar su XML muy fácilmente.
https://github.com/servo-php/fluidxml
fuente
Eche un vistazo al sistema de plantillas Tiny But Strong . Generalmente se usa para crear plantillas HTML, pero hay una extensión que funciona con archivos XML. Lo uso ampliamente para crear informes donde puedo tener un archivo de código y dos archivos de plantilla, htm y xml, y el usuario puede elegir si desea enviar un informe a la pantalla o la hoja de cálculo.
Otra ventaja es que no tiene que codificar el xml desde cero, en algunos casos he querido exportar hojas de cálculo complejas muy grandes, y en lugar de tener que codificar toda la exportación, todo lo que se requiere es guardar una hoja de cálculo existente en xml y sustituto en etiquetas de código donde se requiere salida de datos. Es una forma rápida y muy eficiente de trabajar.
fuente
Es simple, simplemente conéctese con su base de datos, creará el archivo test.xml en la carpeta de su proyecto
fuente