Convert Array made in PHP to XML

1

I'm trying to convert a query where I used array and PHP structurally even in XML but I'm trying the following error: This page contains the following errors: error on line 2 at column 12: StartTag: invalid element name Below is a rendering of the page up to the first error.

Does anyone know what it can be?

<?php 
//chama os arquivo necessário
require('conexao.php');
require('funcoes.php');

$sql = 'SELECT * FROM news LIMIT 10;';
//faz a consulta
$registros = consulta($sql);
//se tem resistros
if($registros){ 

$arrayJornal = array();

//percorre os dados
while ($registro = mysql_fetch_array($registros)) { 

    //$i = 0;
$id = $registro['id'];
    $arrayJornal['Noticias'][$id]['Notícia Código']=$registro['id'];
    $arrayJornal['Noticias'][$id]['Categoria']=$registro['id_category'];
    $arrayJornal['Noticias'][$id]['Seção']=$registro['subject'];
    $arrayJornal['Noticias'][$id]['Título Capa']=$registro['title'];
    $arrayJornal['Noticias'][$id]['Título']=$registro['title_cover'];
    $arrayJornal['Noticias'][$id]['Data']=$registro['date_new'];
    $arrayJornal['Noticias'][$id]['Hora']=$registro['time_new'];
    $arrayJornal['Noticias'][$id]['Resumo']=$registro['resume'];
    $arrayJornal['Noticias'][$id]['Foto']=$registro['picture'];
    $arrayJornal['Noticias'][$id]['LegendaFoto']=$registro['picture_legend'];
    $arrayJornal['Noticias'][$id]['AutorFoto']=$registro['picture_author'];
    $arrayJornal['Noticias'][$id]['Video']=$registro['video'];
    $arrayJornal['Noticias'][$id]['Audio']=$registro['audio'];
    $arrayJornal['Noticias'][$id]['LegendaAudio']=$registro['audio_legend'];
    $arrayJornal['Noticias'][$id]['CodeBlock']=$registro['code_block'];
    $arrayJornal['Noticias'][$id]['CodeBlockLegend']=$registro['code_block_legend'];
    $arrayJornal['Noticias'][$id]['Destaque']=$registro['featured_home'];
    $arrayJornal['Noticias'][$id]['Status']=$registro['status'];
    $arrayJornal['Noticias'][$id]['Visualização']=$registro['view'];
    $arrayJornal['Noticias'][$id]['Criado']=$registro['created'];
    $arrayJornal['Noticias'][$id]['Atualizado']=$registro['modified'];
    $arrayJornal['Noticias'][$id]['TítuloCapa']=$registro['title'];
    $arrayJornal['Noticias'][$id]['Texto']=$registro['information'];

    //$i++;
}

//se não tem registros  
}else{
    echo 'Nenhum resultado encontrado';
}

//fecha a conexão
mysql_close($conn);

function xml_encode($root, $values) {
    return xml_add_children(new SimpleXMLElement("<?xml version='1.0' encoding='utf-8'?><$root/>"), $values)->asXML();
}

function xml_add_children($root, $values) {
    foreach ($values as $key => $value) {
        if ($key[0] == '@') {
            $root->addAttribute(substr($key, 1), $value);
        } else if (!is_array($value) && !is_object($value)) {
            $root->addChild($key, htmlspecialchars($value));
        } else {
            xml_add_children($root->addChild($key), $value);
        }
    }
    return $root;
}

header('Content-Type: application/xml;');
print(xml_encode('Noticias', $arrayJornal['Noticias']));
    
asked by anonymous 22.03.2017 / 19:58

0 answers