Foros del Web » Programando para Internet » PHP »

Indentado de xml escrito por php

Estas en el tema de Indentado de xml escrito por php en el foro de PHP en Foros del Web. Hola a todos necesito una ayuda con lo siguiente: Estoy probando un código que encontré en internet que edita un xml mediante php, el problema ...
  #1 (permalink)  
Antiguo 15/09/2010, 10:19
 
Fecha de Ingreso: septiembre-2008
Mensajes: 55
Antigüedad: 15 años, 7 meses
Puntos: 0
Indentado de xml escrito por php

Hola a todos necesito una ayuda con lo siguiente:
Estoy probando un código que encontré en internet que edita un xml mediante php, el problema que tengo es que cada nodo escrito en el xml no queda indentado por lo que si genero mucha cantidad de nodos el xml queda ilegible.

El codigo que tengo es el siguiente:

Código PHP:
<?php 
$library 
= new SimpleXMLElement('miXml.xml'nulltrue); 
$book $library;
$book->addChild('title'"esto es un nodo");   
formatXml("miXml.xml");
echo 
$library->asXML(); 
$library->asXML('miXml.xml'); 
?>
Esto hace lo siguiente:
Código:
<prueba>
<title>esto es un nodo</title></prueba>
Si genero otra entrada:
Código:
<prueba>
<title>esto es un nodo</title><title>esto es un nodo</title></prueba>
Lo que busco es que el xml quede indentado:
Código:
<prueba>
<title>esto es un nodo</title>
<title>esto es un nodo</title>
</prueba>
Espero que alguien me pueda dar una mano.
Saludos y gracias.
  #2 (permalink)  
Antiguo 15/09/2010, 10:32
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 10 meses
Puntos: 1517
Respuesta: Indentado de xml escrito por php

Usa la librería tidy para que quede indentado.

Edito:
Sería bueno también que verifiques con DOM, la propiedad $formatOutput te permite colocar en forma indentada el XML.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos

Última edición por abimaelrc; 15/09/2010 a las 10:51
  #3 (permalink)  
Antiguo 15/09/2010, 11:34
 
Fecha de Ingreso: septiembre-2008
Mensajes: 55
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Indentado de xml escrito por php

Cita:
Iniciado por abimaelrc Ver Mensaje
Usa la librería [URL="http://php.net/manual/en/book.tidy.php"]tidy[/URL] para que quede indentado.

Edito:
Sería bueno también que verifiques con DOM, la propiedad [URL="http://www.php.net/manual/en/class.domdocument.php#domdocument.props.formatoutp ut"]$formatOutput[/URL] te permite colocar en forma indentada el XML.
Hola amigo gracias por responder pero tengo muy poco conocimiento en php como para aplicar por si solo lo que me acabas de explicar.
  #4 (permalink)  
Antiguo 15/09/2010, 12:27
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 10 meses
Puntos: 1517
Respuesta: Indentado de xml escrito por php

Verifica los ejemplos que da el manual para esto, por ejemplo http://www.php.net/manual/en/tidy.examples.basic.php
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #5 (permalink)  
Antiguo 15/09/2010, 13:14
 
Fecha de Ingreso: septiembre-2008
Mensajes: 55
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Indentado de xml escrito por php

Cita:
Iniciado por abimaelrc Ver Mensaje
Verifica los ejemplos que da el manual para esto, por ejemplo [url]http://www.php.net/manual/en/tidy.examples.basic.php[/url]
Bien, el tema ahora es que no puedo probarlo, la clase tidy no viene instalada por defecto.

Código:
Fatal error: Class 'tidy' not found in C:\xampp\htdocs\prueba on line 9
Estoy usando xampp para probar de forma local, como instalo esto para que me funcione ?
  #6 (permalink)  
Antiguo 15/09/2010, 13:16
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 10 meses
Puntos: 1517
Respuesta: Indentado de xml escrito por php

Verifica esto http://www.php.net/manual/en/tidy.installation.php
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #7 (permalink)  
Antiguo 15/09/2010, 14:27
 
Fecha de Ingreso: septiembre-2008
Mensajes: 55
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Indentado de xml escrito por php

Cita:
Iniciado por abimaelrc Ver Mensaje
Verifica esto [url]http://www.php.net/manual/en/tidy.installation.php[/url]
Perdon amigo pero sigo perdido.

Etiquetas: escrito, xml
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:02.