Ver Mensaje Individual
  #6 (permalink)  
Antiguo 03/08/2011, 13:46
Avatar de abimaelrc
abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Parsear un Array a Un XML.

Hay maneras aún más simples de lograrlo, algo como esto
Código PHP:
Ver original
  1. <?php
  2. function assocArrayToXML($root_element_name,$ar)
  3. {
  4.     $xml = new SimpleXMLElement("<?xml version=\"1.0\"?><{$root_element_name}></{$root_element_name}>");
  5.     $f = create_function('$f,$c,$a','
  6.         foreach($a as $k=>$v) {
  7.             if(is_array($v)) {
  8.                 $ch=$c->addChild($k);
  9.                 $f($f,$ch,$v);
  10.             } else {
  11.                 $c->addChild($k,$v);
  12.             }
  13.         }'
  14.     );
  15.     $f($f,$xml,$ar);
  16.     return $xml->asXML();
  17. }
  18. $arr = array(
  19.     'bar' => array(
  20.         'foo' => 'foo',
  21.         'bar' => 'bar',
  22.         'baz' => 'baz'
  23.     ),
  24.     'baz' => array(
  25.         'foo' => 'foo',
  26.         'bar' => 'bar',
  27.         'baz' => 'baz'
  28.     )
  29. );
  30. echo assocArrayToXML('foo', $arr);
Tomado de http://www.php.net/manual/en/book.simplexml.php#101949
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos