Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > XML > DOM
DOM Forum d'entraide pour l'extension DOM permettant de manipuler des documents XML en PHP 5 (approche DOM). Avant de poster -> tutoriels DOM
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/12/2007, 17h24   #1
Membre du Club
 
Inscription : août 2003
Messages : 133
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : août 2003
Messages : 133
Points : 46
Points : 46
Par défaut [DOM] Analyser du XML ayant une structure inconnue

Bonjour,
est-il possible de parser un fichier xml dont on le connait pas la structure à l'avance ?

mon fichier xml représente une arborescence. un élément peut avoir plusieurs sous élement qui eux memes peuvent avoir d'autres sous élements etc...

si oui, avez-vous une piste à me donner (je commence à peine à voir le xml et je galère pas mal ^^ )
Merci.
bdaboah est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/12/2007, 17h39   #2
Membre éprouvé
 
Avatar de benratti
 
Inscription : mai 2004
Messages : 395
Détails du profil
Informations personnelles :
Âge : 32
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : mai 2004
Messages : 395
Points : 439
Points : 439
A priori, DOM devrait faire ce que tu souhaites. Pour plus d'info, google est ton ams et te conseil d'aller faire un tour sur les articles de developpez.com
benratti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/12/2007, 09h27   #3
Membre du Club
 
Inscription : août 2003
Messages : 133
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : août 2003
Messages : 133
Points : 46
Points : 46
quelqu'un pourrait m'aider ?
Je suis vraiment perdu...

J'ai oublié de préciser que je voudrais effectuer les traitements en php
bdaboah est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/01/2008, 12h06   #4
Membre Expert
 
Avatar de alain.couthures
 
Inscription : avril 2007
Messages : 889
Détails du profil
Informations personnelles :
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : avril 2007
Messages : 889
Points : 1 061
Points : 1 061
L'API DOM de PHP dépend de la version utilisée : PHP 4 ou PHP 5 ?

Je confirme que l'API DOM est tout à fait convenable pour parcourir un document inconnu car elle permet, ni plus ni moins, de parcourir un arbre et, quand on en connait rien, on part de la racine puis on parcourt tous ses fils et ainsi de suite...
__________________
Formulaires XForms sur tous navigateurs sans extension à installer (architecture XRX) : http://www.agencexml.com/xsltforms/
alain.couthures est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/01/2008, 14h08   #5
Membre du Club
 
Inscription : août 2003
Messages : 133
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : août 2003
Messages : 133
Points : 46
Points : 46
c'est du php5
est-ce que tu n'aurais pas un petit exemple sous la main ?
je pédale dans la semoule lol

merci
bdaboah est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/01/2008, 14h17   #6
Membre Expert
 
Avatar de alain.couthures
 
Inscription : avril 2007
Messages : 889
Détails du profil
Informations personnelles :
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : avril 2007
Messages : 889
Points : 1 061
Points : 1 061
Voici un exemple de parcours de descendance :
Code :
1
2
3
4
5
6
7
8
9
10
11
    if($n->hasChildNodes()) {
        $i = 0;
        while($i < $n->childNodes->length) {
            $cur = $n->childNodes->item($i);
            if($cur->nodeType == XML_DOCUMENT_NODE || $cur->nodeType == XML_ELEMENT_NODE) {
                $curname = $cur->nodeName;
..............
            }
            $i++;
        }
    }
et un autre :
Code :
1
2
3
4
5
            $child = $n->ownerDocument->documentElement->firstChild;
            while($child) {
 .............
                $child = $child->nextSibling;
            }
__________________
Formulaires XForms sur tous navigateurs sans extension à installer (architecture XRX) : http://www.agencexml.com/xsltforms/
alain.couthures est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h48.


 
 
 
 
Partenaires

Hébergement Web