DOM mise en page d'un XML

Eléphanteau du PHP | 11 Messages

24 mars 2009, 16:14

Bonjour,
j'utilise SimpleXML pour concevoir mon fichier XML, ensuite DOM me permet de créer le fichier *.xml

Lorsque j'ouvre le fichier dans l'explorateur, les noeuds se mettent comme il faut, tout nickel.
Mais lorsque j'ouvre le fichier avec le bloc-note, je me trouve fâce à ça:

Code : Tout sélectionner

<theme3>theme3_value<question language="fr" fond="cool3">Troisieme question</question> <proposition11>abc<a>def</a>ghi<b>jkl<i>mno<u>pqr</u>stu</i>vwx</b>yz</proposition11><proposition22>2</proposition22> <proposition33>Bonjour<i>et</i>bienvenue<u>chez<i>les</i>fous furieux</u></proposition33> <bonnereponse><blob><tde><b>Ici la reponse qui soule tout le monde</b></tde></blob></bonnereponse></theme3> Note: Tout s'affiche sur la même ligne en réalité mais ça déformait la page du forum
Comment faire pour que DOM construise mon fichier de manière à voir l'arborescence comme je la vois dans le navigateur web ?


Merci beaucoup !


Choum20

Mammouth du PHP | 2937 Messages

24 mars 2009, 16:46

Comment faire pour que DOM construise mon fichier de manière à voir l'arborescence comme je la vois dans le navigateur web ?
Je crains qu'il ne soit impossible d'indenter et de passer à la ligne en utilisant les bibliothèques DOM ou SimpleXML (la méthode asXML() de cette dernière permet aussi de créer un fichier XML en renseignant le chemin du fichier comme paramètre ;) ). Je ne vois pas d'autre solution que de construire ton XML à la main. :-k

Eléphanteau du PHP | 11 Messages

24 mars 2009, 16:50

la méthode asXML() de cette dernière permet aussi de créer un fichier XML en renseignant le chemin du fichier comme paramètre.
Je suis heureux de l'apprendre alors que j'étais convaincu qu'il fallait obligatoirement utiliser DOM pour la création de fichiers...


Pour la mise en page, j'ai déjà vu des postes de gens ayant fait ce genre de choses, ils le faisait avec des <br/> à profusion et vu que je préfère un code propre, je pensais que DOM permetterait de faire le même ... dommage


Merci quand même ;)

Mammouth du PHP | 2937 Messages

24 mars 2009, 16:55

En ce qui concerne l'arboresence, qu'elle soit écrite au fil du texte sur une seule ligne ou indentée dans les règles de l'art, il ne devrait y avoir, en principe, aucune incidence sur l'affichage quand tu affiches le fichier XML seul.

Après, si ton code XML doit être affiché dans un élément PRE sans déformer la page, comme tu dis, n'oublie pas la propriété CSS overflow (et sa valeur auto), couplée à une largeur définie. ;)

Eléphanteau du PHP | 11 Messages

24 mars 2009, 17:04

Merci pour la réponse,
en fait ce qui me dérangeait c'est que le fichier est peu clair pour un humain lorsqu'on le lit dans le bloc-note mais je suis convaincu que j'aurai beaucoup moins de problèmes pour le lire dans flash si je le laisse comme il est.

En fait les fichiers XML que l'on me donne possède une belle arborescence et ceux que je rends sont ... plus complexes lol mais ils font le même résultat (les miens posent moins de problèmes lors des traitements même).