hallo florian
zur Grundstruktur:
function mach_xml($a)
{
Definition von benötigkten Variablen
$br="\n";
$S =' ';
Aufbau des Elements
$element.=$br.'<'.$a['nodeName'];
Aufbau der Attribute
if(isset($a['nodeAttr']))
{
foreach($a['nodeAttr'] as $k=>$v)
{
$element.=$S.$k.'="'.$v.'"';
}
}
Bestimmung des Inhalts
if($a['nodeValues'])
{
# Bestimmung Welche Art Inhalt vorliegt
if(is_array($a['nodeValues']))
{
# Aufbau der Kindelemente
foreach($a['nodeValues'] as $v)
{
# Rekursion auf die Kindelemente
$element.='>'.mach_xml($v);
$element.='</'.$a['nodeName'].'>'.$br;
}
}
elseif($a['nodeValues'])
{
# Kindelement ist ein Textnode
$element.='>'.$a['nodeValues'];
$element.='</'.$a['nodeName'].'>'.$br;
}
else
{
# Element ist leer
$element.=$S.'/>'.$br;
}
}
}
Mit obiger nicht geprüfter Funktion müßte Dein Datenfeld durchlaufen werden können. Allerdings bin ich anders, als Du, davon ausgegangen nodeValues beinhaltet Kindelemente!
nodeValues=children
Der Wert FALSE für nodeValues drückt ein leeres Element aus
Gruß aus Berlin!
eddi