Arrancamos..
Vamos a usar el siguiente archivo XML como ejemplo.
Hola Caracola KaoS Olla Kaitos a Luisete Nuevo articulo en desarrolloweb Raul Jeje hola, aqui estamos
La forma que en mi caso me pareció la mejor, fue "meter" los datos en una matriz o array para luego usarlo
a gusto. Para mi comodidad hice una función:
Podemos usar el array para poder agregar datos al XML.
function XML_a_Matriz($archivo_xml);
$noticias = $doc->getElementsByTagName( "bloque" );
foreach( $noticias as $noticia )
{
$titulos = $noticia->getElementsByTagName( "titulo" );
$titulo = $titulos->item(0)->nodeValue;
$autores = $noticia->getElementsByTagName( "autor" );
$autor = $autores->item(0)->nodeValue;
$cuerpos= $noticia->getElementsByTagName( "cuerpo" );
$cuerpo= $cuerpos->item(0)->nodeValue;
$noticias_array[] = array(
'titulo' => $noticia,
'autor' => $autor,
'cuerpo' => $cuerpo,
);
}
return $noticias_array;
}
?>
Bueno creo que con este ejemplo da para hacer algo mas complejo. Seguiré leyendo.
include 'XMLaMatriz.php'
$noticias=XML_a_Matriz("noticias.xml");
$noticias[] = array(
'noticia' => 'PRUEBA1',
'autor' => 'Menganito',
'cuerpo' => 'LoQSea',
);
$doc = new DOMDocument();
$doc->formatOutput = true;
$r = $doc->createElement( "bloque" );
$doc->appendChild( $r );
foreach( $noticias as $noticia_w )
{
$b = $doc->createElement( "noticia" );
$titulo = $doc->createElement( "titulo" );
$titulo->appendChild(
$doc->createTextNode( $noticia_w['titulo'] )
);
$b->appendChild( $titulo );
$autor = $doc->createElement( "autor" );
$autor->appendChild(
$doc->createTextNode( $noticia_w['autor'] )
);
$b->appendChild( $autor );
$cuerpo = $doc->createElement( "cuerpo" );
$cuerpo->appendChild(
$doc->createTextNode( $noticia_w['cuerpo'] )
);
$b->appendChild( $cuerpo );
$r->appendChild( $b );
}
$doc->save("noticias.xml")
?>
No hay comentarios.:
Publicar un comentario