FICHIER XML => TABLEAU ASSOCIATIF

Signaler
Messages postés
488
Date d'inscription
samedi 5 avril 2003
Statut
Membre
Dernière intervention
31 mars 2009
-
Messages postés
23
Date d'inscription
vendredi 20 juillet 2007
Statut
Membre
Dernière intervention
26 août 2008
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/47568-fichier-xml-tableau-associatif

Messages postés
23
Date d'inscription
vendredi 20 juillet 2007
Statut
Membre
Dernière intervention
26 août 2008

J'avoue que c'est un de mes default, et je vous montre pas ma premiere version ou j'ai utilisé aucune fonction xml. Mais un gentil monsieur ma dit que ca existé alors je me suis jeter sur les premières que j'ai trouvé.
Mais je vais lire avec plaisir le man de SimpleXML, merci à vous :)
Messages postés
488
Date d'inscription
samedi 5 avril 2003
Statut
Membre
Dernière intervention
31 mars 2009
4
Oui il y'a SimpleXML mais actuellement la classe que j'ai schématisée dans mon commentaire est en PHP 4. Je l'ai développée au bureau pour un projet client en PHP 4. Mais c'est clair que durealex aurait du se pencher tout de suite sur SimpleXML plutôt que de réinventer la roue.
Messages postés
40
Date d'inscription
jeudi 23 janvier 2003
Statut
Membre
Dernière intervention
13 août 2008

Hello,

Sinon y'a un truc encore beaucoup plus simple, c'est l'extension simpleXML.

http://fr2.php.net4/manual/fr/book.simplexml.php

"L'extension SimpleXML fournit des outils très simples et faciles à utiliser pour convertir du XML en un objet qui peut être manipulé avec ses propriétés et les itérateurs de tableaux."

Les exemples qui expliquent comment c'est ultra simple d'utilisation sont là http://fr2.php.net/manual/fr/simplexml.examples.php
Messages postés
488
Date d'inscription
samedi 5 avril 2003
Statut
Membre
Dernière intervention
31 mars 2009
4
Salut,

Personnellement, au bureau je me suis créé une classe PHP me permettant de me faciliter la lecture de fichiers XML. Pour cela, j'utilise XPath qui est un langage permettant de naviguer dans un fichier XML. En retour, je reçois un tableau associatif qui me représente le noeud (ainsi que tous ses fils) sur lequel je me suis arrêté. Ce qui donne par exemple :

<?php

$o = new XMLFinder('mon_fichier.xml');
// Je recherche tous les noeuds <root><nodeA><nodeAB prenom="toto">
// Je récupère un tableau associatif avec les attributs et contenus texte de chaque noeud
$a = $o->xpath('/root/nodeA/nodeAB[@prenom="toto"]');
// Je ne veux que le contenu d'un noeud
$a = $o->xpath('/root/nodeA/nodeAB[@prenom="toto"]', XMLFinder::CONTENT);
// Je ne veux que les attributs d'un noeud
$a = $o->xpath('/root/nodeA/nodeAB[@prenom="toto"]', XMLFinder::ATTRIBUTES);
?>

Globalement ça ressemble à ça. Ca me permet de gagner beaucoup de temps et de la flexibilité :)

++
Afficher les 6 commentaires