Bonjour,
j'ai un fichier xml avec la structure suivant, que je n'arrive pas a lire les champs de différentes balises
ce que je veux c'est pouvoir récupérer le nom et les projets
Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
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 <?xml version="1.0" encoding="UTF-8"?> <mysql> <database name="personnes"> <table> <fiche> <var name="id">1380</var> <var name="nom">Clark</var> <var name="prenom">Jon</var> <var name="statut">Stud</var> <var name="formation">ing.,M.Sc.A.</var> <var name="ancien">false</var> <var name="Login">P234</var> <var name="pageWebPerso" generation="auto">http://www.web.com/p234</var> <var name="photo">none</var> <var name="distinctions" generation="auto"></var> <var name="implicationprojet"> <projet>project1</projet> <projet>project2</projet> <projet>project3</projet> <projet>project4</projet> </var> <var name="tel"></var> <var name="local"></var> <var name="courriel">hooyu@yahoo.com</var> <var name="implicationlabo"> <laboratoire>lab1</laboratoire> <laboratoire>lab2</laboratoire> <laboratoire>lab3</laboratoire> <laboratoire>lab4</laboratoire> </var> </fiche> </table> </database> </mysql>
c-a-d: pouvoir lister
Jon Clark
project1, project2, project3...
j'ai écrit ce bout de code mais ça ne marche pas je sais pas comment remédier à ce problème
merci pour votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 <?php function getVarByName($fiche, $name) { $xpath = new DOMXPath($fiche->ownerDocument); $res = $xpath->query(sprintf($name), $fiche); if (!$res or $res->length == 1) { return $res->item(0)->nodeValue; } else { return FALSE; } } $fichier_xml = 'personnes.xml'; $dom = new DomDocument; $dom->preserveWhiteSpace = FALSE; $dom->formatOutput = TRUE; $dom->load($fichier_xml); $i=0; foreach ($dom->getElementsByTagName('fiche') as $fiche) { $var1=utf8_decode(getVarByName($fiche->var[@name='nom'])); $var3=utf8_decode(getVarByName($fiche->var[@name='prenom'])); echo'nom et prenom'.$var1.$var3; $var2=utf8_decode(getVarByName($fiche->var[@name='projet'])); echo'projets'.$var2; } ?>
Partager