[SimpleXML] Analyser un fichier XML avec PHP
bonjour,
j ai creer un fichier XML simple puis j ai essaye ede le parser avec script php mais il m affiche juste le premier element , j ai essaye de resoudre le probleme mais j'arrive pas a voir l'erreur!!
merci pour votre aide.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
<?xml version="1.0" encoding="UTF-8"?>
<promotion>
<etudiant>
<nom>Mathieu</nom>
<prenom>richard</prenom>
<age>21</age>
<genie>mecanique</genie>
</etudiant>
<etudiant>
<nom>Phillipe</nom>
<prenom>jacques</prenom>
<age>25</age>
<genie>informatique</genie>
</etudiant>
<etudiant>
<nom>isabelle</nom>
<prenom>dupont</prenom>
<age>23</age>
<genie>chimique</genie>
</etudiant>
</promotion> |
et le script php :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| <?php
$fichier ="document_a_parser.xml";
$fp = fopen($fichier,"r");
if(!$fp)
{
echo'erreur d ouverture!';
exit;
}
else
{
*traiterTexte : fonction qui va traiter le texte entre les balises XML
*@param : l'identifiant du parseur qui va l'utiliser
*@param : le texte a afficher
*/
function traiterTexte($parseur,$texte)
{
echo $texte."</br>";
}
$parseurXML = xml_parser_create(); // creer le parseur par le constructeur
xml_set_character_data_handler($parseurXML , "traiterTexte"); //associer le parseur a la fonction de traitement
while($ligneXML = fgets($fp ))
{
xml_parse($parseurXML , $ligneXML ,feof($fp));
}
xml_parser_free($parseurXML);
}
fclose($fp);
?> |
et le resultat sur iExplorer l'affichage d'un seul element moi je veux tout afficher:
Mathieu
richard
21
mecanique