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

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP & XMLReader] Ne passe pas dans les noeuds Attributs [Resolu]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP & XMLReader] Ne passe pas dans les noeuds Attributs [Resolu]

n°1505659
_Raynor_
Posté le 21-01-2007 à 20:09:44  profilanswer
 

Bonsoir,
 
J'essaie de lire un fichier XML avec XMLReader en PHP.
 
Fichier "fichier.xml" : :

Code :
  1. <?xml version="1.0" encoding="ISO-8859-1"?>
  2. <page>
  3. <title>Accueil du site</title>
  4. <nom>Accueil</nom>
  5. <code id="articles_a_la_une" dd="dd" />
  6. </page>

Script PHP : :

Code :
  1. $xmlReader = new XMLReader();
  2. $xmlReader->open('fichier.xml');
  3. echo '<pre>';
  4. while($xmlReader->read()) {
  5. echo 'Nom = ' . $xmlReader->name . "\n";
  6. echo 'Valeur = ' . $xmlReader->value . "\n";
  7. echo 'type = ' . $xmlReader->nodeType . "\n";
  8. echo '-------------------------' . "\n";
  9. }
  10. $xmlReader->close();


Et je me récupère :

Citation :

Nom = page
Valeur =  
type = 1
-------------------------
Nom = #text
Valeur =  
 
type = 14
-------------------------
Nom = title
Valeur =  
type = 1
-------------------------
Nom = #text
Valeur = Accueil du site
type = 3
-------------------------
Nom = title
Valeur =  
type = 15
-------------------------
Nom = #text
Valeur =  
 
type = 14
-------------------------
Nom = nom
Valeur =  
type = 1
-------------------------
Nom = #text
Valeur = Accueil
type = 3
-------------------------
Nom = nom
Valeur =  
type = 15
-------------------------
Nom = #text
Valeur =  
 
type = 14
-------------------------
Nom = code
Valeur =  
type = 1
-------------------------
Nom = #text
Valeur =  
 
type = 14
-------------------------
Nom = page
Valeur =  
type = 15
-------------------------


 
Ce qui me dérange c'est de ne jamais voir apparaître de noeud de type XMLReader::ATTRIBUTE (code n°2).
 
Pour chaque noeud, je sais récupérer la valeur du premier attribut (s'il y en a) avec $xmlReader->getAttributeNo(0), mais j'aurais aimé pouvoir récupérer le nom de l'attribut : chose que je pensais possible en lisant la propriété name du noeud lorsque le noeud est du type XMLReader::ATTRIBUTE.
 
Bonne fin de week-end.


Message édité par _Raynor_ le 22-01-2007 à 02:14:00
mood
Publicité
Posté le 21-01-2007 à 20:09:44  profilanswer
 

n°1505719
sielfried
Posté le 21-01-2007 à 23:06:18  profilanswer
 

Code :
  1. while ($xmlReader->read()) {
  2.  echo 'Nom = ' . $xmlReader->name . "\n";
  3.  echo 'Valeur = ' . $xmlReader->value . "\n";
  4.  echo 'type = ' . $xmlReader->nodeType . "\n";
  5.  echo '-------------------------' . "\n";
  6.  
  7.  for ($i = 0; $xmlReader->moveToAttributeNo($i); $i++) {
  8.    echo 'Nom = ' . $xmlReader->name . "\n";
  9.    echo 'Valeur = ' . $xmlReader->value . "\n";
  10.    echo 'type = ' . $xmlReader->nodeType . "\n";
  11.    echo '-------------------------' . "\n";
  12.  }
  13. }


 
?


Message édité par sielfried le 21-01-2007 à 23:07:10
n°1505741
_Raynor_
Posté le 22-01-2007 à 02:13:35  profilanswer
 

Merci, ça fonctionne :)
J'aurais cru que XMLReader::read() rentrerait dans les attributs sans avoir à le forcer :heink:


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

  [PHP & XMLReader] Ne passe pas dans les noeuds Attributs [Resolu]

 

Sujets relatifs
[Résolu] [Visual Basic] Modifier et utiliser un composant MSFlexGridrecherche codeur PHP pour jeu de rôle en ligne gratuit.
[Résolu] [VBA] Comment lancer un .chm ?[RESOLU] Recherche éditeur table SQL ultra basique
[RESOLU]ouvrir un répertoire sélectionné et lister[JAVA/JSP] Formulaire JSP/Servlet - Conservations de données [Resolu]
Techniques de Dev PHP ?[résolu] Ajax et erreur de syntaxe
[Résolu] Comment envoyer un fichier sur un serveur (client ftp)[Résolu] [Charset] Gros pb entre UTF8 et ISO ?
Plus de sujets relatifs à : [PHP & XMLReader] Ne passe pas dans les noeuds Attributs [Resolu]


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