|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Développeur informatique Inscription : décembre 2006 Messages : 3 ![]() |
Bonjour,
j'ai quelques soucis quant à l'utilisation du DOM avec PHP5. mon projet est le suivant : je reçois une ou plusieurs commandes clients dans un fichier au format XML que je dois traiter afin d'intégrer toutes les infos dans l'ERP de ma société (MFG PRO v7.3k pour ceux qui connaissent). Celui-ci étant assez ancien, les données à traiter seront donc converties en fichier csv. J'ai choisi, pour ce faire, la solution Apache/PHP5. Mon permier soucis est le suivant : j'arrive bien à traduire l'ensemble du fichier en csv (avec une fonction récursive) seulement une commande peut être différente d'une autre avec par exemple une ou plusieurs descriptions (ou aucune comme dans l'exemple suivant) Code XML :
Je n'arrive donc pas à gérer proprement ce genre de cas pour avoir toutes mes lignes de commandes formattées de la même façon. Et mon code commance à ressembler à une usine à gaz. Mon deuxieme soucis est que quand je veux connaitre le nombre de fils d'un noeud, il me ramène des choses incohérentes : par exemple un noeud possède 2 fils, $noeud->length va me rammer 5 (2 XML_ELEMENT_NODE et 3 XML_TEXT_NODE) et je ne comprends pas pourquoi. Merci pour votre aide !!! Erivoil |
||
|
|
00
|
|
|
#2 | |
|
Expert Confirmé
![]() ![]() Inscription : avril 2003 Messages : 3 286 ![]() |
Citation:
- un noeud textuel (avec des espaces, un retour à la ligne, des tabulations... que sais-je ! c'est bien du texte tout ça en fait) - un élément - un noeud textuel - un élément - un dernier noeud textuel En fait il va falloir faire des tests pour ne pas prendre en compte les noeuds textuels, qui viennent du formatage du document. Tu pourrais utiliser getElementsByTagName, mais l'inconvénient c'est que tu récupéreras tous les descendants de même nom, pas seulement les fils. A toi de voir si ça convient à ton appli.
__________________
Tous mes tutoriels Pas de questions techniques par MP ni par e-mail, merci ! Prolog rules! |
|
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Développeur informatique Inscription : décembre 2006 Messages : 3 ![]() |
Merci pour ta réponse et aussi d'avoir déplacé mon post, oups...
Pour le nombre de fils, j'ai effectivement fait un test en ne tenant compte que du type XML_ELEMENT_NODE mais c quand même pas évident à gérer. Merci pour cette première réponse. Erivoil |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com