Aqui te dejo un ejemplo de como lo hice yo, a ver si te sirve, en este caso lo que hago es copiar los datos de un fichero xml existente, y añadirlos en un fichero xml nuevo que creo mediante este codigo:
Código PHP:
<?php
$titol=$_POST["titol"];
$dir=$_POST["dir"];
$act1=$_POST['actor1'];
$act2=$_POST['actor2'];
$data=$_POST["data"];
$prod=$_POST["prod"];
$premi=$_POST["premi"];
$file = 'pelis.xml';
$file = file_get_contents('pelis.xml');
$sxe = new SimpleXMLElement($file);
$pelicula = $sxe->addChild('pelicula');
$pelicula->addChild('titol', $titol);
$pelicula->addChild('director', $dir);
$actors = $pelicula->addChild('actors');
$actors->addChild('actor', $act1);
$actors->addChild('actor', $act2);
$pelicula->addChild('data_estrena', $data);
$productors = $pelicula->addChild('productors');
$productors->addChild('productor',$prod);
$premis = $pelicula->addChild('premis');
$premis->addChild('premi', $premi);
$file1 = 'pelis2.xml';
file_put_contents($file1, $sxe->asXML());
}
?>
Aqui te dejo el codigo de mi archivo xml, por si te interesa
Código:
<?xml version="1.0" encoding="UTF-8"?>
<pelicules>
<pelicula>
<titol>Crash</titol>
<director>Paul Haggis</director>
<actors>
<actor>Sandra Bullock</actor>
<actor>Brendan Fraser</actor>
<actor>Terrence Howard</actor>
</actors>
<productors>
<productor>Paul Haggis</productor>
<productor>Barney A. Sarecky</productor>
</productors>
<data_estrena>2005</data_estrena>
<premis>
<premi>Millor pelicula</premi>
<premi>Millor guio original</premi>
<premi>Millor montatge</premi>
</premis>
</pelicula>
</pelicules>