Introduction au langage PHP 5 par l'exemple
XIII. Traitement de documents XML (simplexml_01)▲
Nous considérons le fichier [data.xml] suivant :
Sélectionnez 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
<?
xml version=
"
1
.
0
"
encoding=
"
UTF
-
8
"
?>
<
tribu>
<
enseignant>
<
personne sexe=
"
M
"
>
<
nom>
dupont<
/
nom>
<
prenom>
jean<
/
prenom>
<
age>
28<
/
age>
ceci est un commentaire
<
/
personne>
<
section>
27<
/
section>
<
/
enseignant>
<
etudiant>
<
personne sexe=
"
F
"
>
<
nom>
martin<
/
nom>
<
prenom>
charline<
/
prenom>
<
age>
22<
/
age>
<
/
personne>
<
formation>
dess IAIE<
/
formation>
<
/
etudiant>
<
/
tribu>
Nous analysons ce document avec le script suivant :
Sélectionnez 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
<?php
$
FILE_NAME
=
"
data
.
xml
"
;
$
xml
=
simplexml_load_file ($
FILE_NAME
);
print_r ($
xml
);
print_r ($xml
->enseignant
->personne
[
'
sexe
'
]
);
$
nom
=
$xml
->enseignant
->personne
->nom
;
print
"
nom
=
$nom
\n
"
;
$
sexe
=
$xml
->enseignant
->personne
[
'
sexe
'
]
;
print
"
sexe
=
$sexe
\n
"
;
$
formation
=
$xml
->etudiant
->formation
;
print
"
formation
=
$formation
\n
"
;
print
"
isset
=
"
.
isset ($xml
->enseignant
->personne
->nom
).
"
\n
"
;
print
"
isset
=
"
.
isset ($xml
->enseignant
->personne
->xx
).
"
\n
"
;
Nous utilisons ici un module PHP appelé [simpleXML] qui permet d'exploiter des documents XML.
ligne 6 : chargement du fichier XML
ligne 7 : affichage du document XML
ligne 8 : affichage de la valeur de l'attribut 'sexe ' d'une personne enseignante : <enseignant><personne sexe='…'>
ligne 9 : affichage de la valeur de la 1re balise <enseignant><personne><nom>
Résultats
Sélectionnez 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. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46.
SimpleXMLElement Object
(
[enseignant] => SimpleXMLElement Object
(
[personne] => SimpleXMLElement Object
(
[@attributes] => Array
(
[sexe] => M
)
[nom] => dupont
[prenom] => jean
[age] => 28
)
[section] => 27
)
[etudiant] => SimpleXMLElement Object
(
[personne] => SimpleXMLElement Object
(
[@attributes] => Array
(
[sexe] => F
)
[nom] => martin
[prenom] => charline
[age] => 22
)
[formation] => dess IAIE
)
)
SimpleXMLElement Object
(
[0] => M
)
nom=dupont
sexe=M
formation=dess IAIE
isset=1
isset=
lignes 1-37 : le document XML sous la forme d'un objet de type [simpleXML].
Le script précédent ne nous montre toutes les possibilités du module [simpleXML] mais il nous suffit pour écrire une dernière version de l'exercice IMPOTS.
Le contenu de cet article est rédigé par Serge Tahé et est mis à disposition selon les termes de la
Licence Creative Commons Attribution - Pas d'Utilisation Commerciale - Partage dans les Mêmes Conditions 3.0 non transposé .
Les logos Developpez.com, en-tête, pied de page, css, et look & feel de l'article sont Copyright © 2011 Developpez.com.