getElementsByTagName("liste")->item(0); $res = new DOMDocument(); $rac = $res->createElement("liste"); $res->appendChild($rac); $les_eleves = $depart->getElementsByTagName("eleve"); foreach( $les_eleves as $l_eleve ){ // foreach marche avec NodeList ! //lecture $le_nom = $l_eleve->getAttribute("nom"); $la_note = $l_eleve->getAttribute("note"); //construction $elv = $res->createElement("eleve"); $rac->appendChild($elv); $elt_nom = $res->createElement("nom"); $elv->appendChild($elt_nom); $elt_nom->appendChild($res->createTextNode($le_nom)); $elt_note = $res->createElement("note"); $elv->appendChild($elt_note); $elt_note->appendChild($res->createTextNode($la_note)); } return $res; }// transformer function UnVersDeux($fichIn, $fichOut){ $doc = new DOMDocument(); $doc->load($fichIn); $res = transform1_2($doc); $res->save($fichOut); }//UnVersDeux UnVersDeux("Nom_note1.xml", "NN2.xml"); ?>