Ver Mensaje Individual
  #5 (permalink)  
Antiguo 28/06/2011, 12:27
PercevalCiro
 
Fecha de Ingreso: junio-2009
Mensajes: 64
Antigüedad: 15 años, 4 meses
Puntos: 6
Respuesta: Consulta DomDocument.

Cita:
Iniciado por abimaelrc Ver Mensaje
Bueno un demo, mientras contestas
Código PHP:
Ver original
  1. <?php
  2. $xml = <<<XML
  3. <foo>
  4.     <bar>
  5.         <candy>candy</candy>
  6.         <fruits>fruits</fruits>
  7.         <vegetable>vegetable</vegetable>
  8.     </bar>
  9.     <baz>
  10.         <candy>candy</candy>
  11.         <fruits>fruits</fruits>
  12.     </baz>
  13. </foo>
  14. XML;
  15. $dom = new DOMDocument();
  16. $dom->preserveWhiteSpace = false;
  17. $dom->formatOutput = true;
  18. $dom->loadXML($xml);
  19. $baz = $dom->getElementsByTagName('baz')->item(0);
  20.  
  21. $vegetable = $dom->createElement('vegetable','vegetable');
  22. $baz->appendChild($vegetable);
  23.  
  24. echo $dom->saveXML();
  25.  
  26. /**
  27.  * Output:
  28.  *<?xml version="1.0"?>
  29.  * <foo>
  30.  *   <bar>
  31.  *     <candy>candy</candy>
  32.  *     <fruits>fruits</fruits>
  33.  *     <vegetable>vegetable</vegetable>
  34.  *   </bar>
  35.  *   <baz>
  36.  *     <candy>candy</candy>
  37.  *     <fruits>fruits</fruits>
  38.  *     <vegetable>vegetable</vegetable>
  39.  *   </baz>
  40.  * </foo>
  41.  */
Entiendo perfectamente, es decir que la recomendacion para acceder a distintos tags es a traves de la funccion getElementByTagName como los de JavaScript.. correcto?... Muchas Gracias Probare por ahi.

Por otro lado:
$dom->preserveWhiteSpace = false;
$dom->formatOutput = true;

No me queda ninguna duda sobre la primera, es más voy a agregar las propiedades correspondiente, pero la segunda que alcance tiene?...

Por ultimo, se esta haciendo pasa los valores por referencias cuando haces:

$baz = $dom->getElementsByTagName('baz')->item(0);

$vegetable = $dom->createElement('vegetable','vegetable');
$baz->appendChild($vegetable);

echo $dom->saveXML();


Muchas Gracias.

Última edición por PercevalCiro; 28/06/2011 a las 12:43