Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1380 connectés 

  FORUM HardWare.fr
  Programmation
  XML/XSL

  [XML & PHP]Parcourt d'un fichier XML

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[XML & PHP]Parcourt d'un fichier XML

n°1751905
hsmr
Posté le 26-06-2008 à 16:36:20  profilanswer
 

Bonjour,
 
Je souhaite parcourir un fichier XML représentant un menu, de la forme suivante :

Code :
  1. <menu>
  2.      <rubrique>
  3.           <id>1</id>
  4.           <idparent>0</idparent>
  5.           <libelle>rubrique 1</libelle>
  6.           <lien>url rubrique 1</url>
  7.           <sousrubrique>
  8.                <libelle>rubrique 1.1</libelle>
  9.                <libelle>rubrique 1.2</libelle>
  10.           </sousrubrique>
  11.      </rubrique>
  12.      <rubrique>
  13.           <id>2</id>
  14.           <idparent>0</idparent>
  15.           <libelle>rubrique 2</libelle>
  16.           <lien>url rubrique 2</url>
  17.           <sousrubrique>
  18.                <libelle>rubrique 2.1</libelle>
  19.           </sousrubrique>
  20.      </rubrique>
  21.      <rubrique>
  22.           <id>11</id>
  23.           <idparent>1</idparent>
  24.           <libelle>rubrique 1.1</libelle>
  25.           <lien>url rubrique 1.1</url>
  26.           <sousrubrique>
  27.                <libelle>rubrique 1.1.1</libelle>
  28.                <libelle>rubrique 1.1.2</libelle>
  29.           </sousrubrique>
  30.      </rubrique>
  31.      ...
  32.      <rubrique>
  33.           <id>XYZ</id>
  34.           <idparent>11</idparent>
  35.           <libelle>rubrique 1.1.1</libelle>
  36.           <lien>url rubrique 1.1.1</url>
  37.      </rubrique>
  38.      ...
  39. </menu>

J'aimerais à partir de ce fichier (qui n'est pas trié, les données sont dispatchées dans tout le fichier), construire (en PHP) un menu qui ressemblerait à ceci :

Code :
  1. rubrique 1
  2.      -> rubrique 1.1
  3.           --> rubrique 1.1.1
  4.           --> rubrique 1.1.2
  5.      -> rubrique 1.2
  6. rubrique 2
  7.      -> rubrique 2.1

Pour l'instant, le seul algorithme que j'ai est le suivant :
Pour chaque noeud, je recherche un noeud dont l'"idparent" correspond à l'"id" du noeud courant.
Or je trouve que ce n'est pas très intéressant car plus mon fichier sera volumineux, et plus mon parcourt des rubriques mettra du temps.
Alors j'aimerais savoir s'il existe des outils (ou des fonctions) qui permettraient de récupérer facilement les sousrubriques d'une rubrique ?
Merci.


Message édité par hsmr le 26-06-2008 à 16:42:23
mood
Publicité
Posté le 26-06-2008 à 16:36:20  profilanswer
 

n°1752149
avander
Posté le 27-06-2008 à 10:34:59  profilanswer
 

Je regarderais du côté de la fonction Xpath id(), mais cela requièrt une DTD pour définir les id's... j'ignore si c'est faisable en php.

n°1754517
cvb
Posté le 02-07-2008 à 12:30:16  profilanswer
 

Utilise SimpleXML qui permet de lire des fichiers facilement, c'est de l'objet....


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  XML/XSL

  [XML & PHP]Parcourt d'un fichier XML

 

Sujets relatifs
Upload de fichier en http sur mon serveur : Pb timeout sur la réponse[Résolu] - [Php] - Fonction Isset
Passerelle vers PHPParcours XML + boucle : WINDEV
WSS 3.0 : upload d'un fichier depuis un poste client vers un site SPBD XML eXist et XQuery
Problème avec XML::Simple[Grand Sites Internet] Génération de pages PHP ou HTML
[VBA] Ouvrir fichier Excel - même répertoireUtilité de "global" en haut d'un fichier PHP
Plus de sujets relatifs à : [XML & PHP]Parcourt d'un fichier XML


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR