2010-12-03 95 views
3

J'ai donc écrit ce script qui recherche certains nœuds dans un fichier XML, le supprime et met un nouveau nœud à sa place ... cependant, le nouveau nœud apparaît comme ceci:Formatage de la sortie en fichier avec PHP DOMDocument

<PrintQuestion id="17767" type="pickOne"> 

<Standards><Standard value="CA.MATH-6-6-20" state="CA" grade="3" subject="MATH"/></Standards><References> 
     <PassageRef id="1892"/> 
    </References> 

J'ai essayé d'utiliser le $ xml-> formatOutput = true; mais cela n'a rien fait. Je charge l'objet dom à partir d'un fichier XML et le sauvegarde dans le même fichier à la fin.

+0

http://pastie.org/1345207 – ThinkingInBits

+0

double possible de [PHP XML comment le format agréable de sortie] (http://stackoverflow.com/questions/8615422/php-xml-how-to -output-nice-format) – Gajus

Répondre

11

Lorsque vous souhaitez utiliser

$xml->formatOutput = TRUE; 

vous devez également définir

$xml->preserveWhiteSpace = FALSE; 

Vous avez écrit preserveWhitespace (l'esprit le 2ème s). Les propriétés sont sensibles à la casse en PHP.

See difference on codepad

+0

WOW ... Je ne peux pas croire que je n'ai pas remarqué cela. Merci! – ThinkingInBits

+0

@ThinkingInBits vous êtes les bienvenus :) – Gordon