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

  FORUM HardWare.fr
  Programmation
  PHP

  Parser un fichier XML

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Parser un fichier XML

n°1743487
nero27
Posté le 09-06-2008 à 14:28:58  profilanswer
 

Bonjour,

 

Je dois parser les informations contenues dans un fichier XML que je trouve très mal fait :

 

Voici un exemple :

Code :
  1. <?xml version="1.0" encoding="iso-8859-1" ?>
  2. <MULTIFORM status="OK" >
  3. <N_PAISES>2</N_PAISES>
  4. <PAIS>AR</PAIS>
  5. <NOMBRE_PAIS_ES>Argentina</NOMBRE_PAIS_ES>
  6. <MONEDA>PESOS</MONEDA>
  7. <PAIS>AU</PAIS>
  8. <NOMBRE_PAIS_ES>Australia</NOMBRE_PAIS_ES>
  9. <MONEDA>AUS$</MONEDA>
  10. ...
  11. </MULTIFORM>
 

J'aimerais parser le fichier pour obtenir les informations sur chaque pays : comment puis-je faire, j'avoue que je bloque à cause du fait que chaque pays n'est pas vraiment délimité de façon distincte :/

 

Merci d'avance pour votre aide :jap:


Message édité par nero27 le 11-06-2008 à 09:26:39
mood
Publicité
Posté le 09-06-2008 à 14:28:58  profilanswer
 

n°1743834
CyberDenix
Posté le 09-06-2008 à 22:52:56  profilanswer
 

utilise simple_xml, c'est super simple (!).
 
ya un guide sur developpez.com.


---------------
Directeur Technique (CTO)
n°1743846
nero27
Posté le 09-06-2008 à 23:18:33  profilanswer
 

Ok, je connais pas, je vais regarder ça ;)

n°1744541
nero27
Posté le 11-06-2008 à 09:26:44  profilanswer
 

Alors, je viens de me mettre sur SimpleXML, mais je rencontre un petit souci dû au fichier XML mal conçu qui m'est fourni :
Les infos sont listées sans délimitations. Je m'explique : je dois récupérer les infos sur chaque pays (<PAIS> ), mais celles-ci sont contenues dans des balises qui suivent plutôt que dans des sous-balises (v. exemple dans le premier message) :/

 

Comment puis-je y accéder ?


Message édité par nero27 le 11-06-2008 à 09:26:59
n°1749719
CyberDenix
Posté le 21-06-2008 à 16:48:55  profilanswer
 

Ya aucun problème si tous les champs sont remplis pour chaque pays, sinon t'es bon pour manger des regexp avec preg_match_all().
 
Dans le cas numéro 1, en prenant un exemple simple, il te suffit de faire un foreach avec les pays et pour chaque nom trouvé tu le met dans un tableau.
 
Puis tu fais un foreach avec les devises et pour chaque nom trouvé tu le met dans un tableau.
 
...etc., tu fais de meme pour chaque balise.
 
A la fin t'as un tableau des pays, un tableau des devises...etc. où chaque indice a son équivalent dans les autres tableau.
Donc si t'as l'indice (en parcourant l'un des tableaux, par exemple) tu peux piocher les infos dont tu as besoin dans le tableau des pays, le tableau des devises...etc. et faire comme si tu lisais une ligne.


Message édité par CyberDenix le 21-06-2008 à 16:50:25

---------------
Directeur Technique (CTO)

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Parser un fichier XML

 

Sujets relatifs
[ bash ] date de dernière d'un fichierParser un fichier XML en PHP
[RSS] fichier XML ok mais faut-il obligatoirement le parser avec PHP?Parser un fichier Atom XML ?
[JavaScript/XML] Parser un fichier XML en variable arbre[java] Parser un fichier XML
Parser un fichier XML[Java-XML] Arret de lecture d'un fichier XML avec un parser SAX
[java] parser XML : fichier XML dans un jar ou non....[PHP-XML] Parser une variable à la place d'un fichier?
Plus de sujets relatifs à : Parser un fichier XML


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