PHP – Array para XML

Bom… Essa vai ajudar bastante…

Em algumas ocasiões, agente precisa enviar dados para outros sistemas saídos de um array em php…

Aí vem a pergunta: ” – Como?”

Então vai a resposta: ” – Assim, ó:”

function arr2xml($array)
{
if(is_array($array))
{
function create_tag($XML,$array)
{
foreach($array as $tag_name => $value)
{
$tag_name=is_numeric($tag_name)?"_".$tag_name:$tag_name;
if(is_array($value))
{
$XML->startElement($tag_name);
create_tag($XML,$value);
}
else
{
$XML->writeElement($tag_name,$value);
}
}
$XML->endElement();
}
$XML= new XMLWriter();
$XML->openMemory();
$XML->startDocument('1.0','UTF-8');
create_tag($XML,$array);
$XML->endDocument();
return utf8_encode($XML->outputMemory());
}
else
{
return false;
}
}