8
votes

Php simplexml nouvelle ligne

J'ai créé un fichier XML à l'aide de Simple XML de PHP, enregistré le fichier. Lors de l'ouverture du fichier en PHP en utilisant Fopen et d'imprimer le contenu. Mon XML ressemble à ceci: (voir ci-dessous)

<?xml version="1.0" encoding="UTF-8"?>
<home><orderList><delivery_cost>0.00</delivery_cost><delivery_surname>TEST</delivery_surname><delivery_postcode>1234</delivery_postcode><status>1</status></orderList></home>


1 commentaires

Comment sauvegez-vous le fichier XML?


3 Réponses :


14
votes

2 commentaires

Vous pouvez également importer la représentation DOM de votre objet SimplexML à un objet Domelement / Domdocument et que de définir la propriété FormationOutput sur l'objet DomDocument. De cette façon, vous n'avez pas à reproduire la chaîne XML. Voir << a href = "http://docs.php.net/function.dom-import-simplexml" rel = "nfollow Noreferrer"> docs.php.net/function.dom-import-simplexml > et << a href = "http://docs.php.net/class.domnode#domnode.props.ownerdocument" rel = "nOfollow noreferrer"> docs.php.net/class.domnode#domnode.props.ownerdocument < / a >>


Le problème avec formatOutput est-ce que cela ne fonctionnera que si vous n'avez pas de nœuds de texte. IOW, s'il y a même une lamelle entre deux nœuds, il n'essaiera pas de péténer la sortie.



2
votes

Ceci s'appelle "jolie impression" et SimplexML ne le fait pas. Si vous recherchez sur la pile débordement et ailleurs sur le Web, vous trouverez des solutions personnalisées qui font cela.

Jolie impression est bon pour la visite de visession mais Je ne recommande pas d'enregistrer des documents dans ce format . / p>

Si vous recherchez toujours une jolie imprimante, vous pouvez essayer SimpleDom < / a> 's asprettyxml () xxx


0 commentaires

-3
votes

echo "\ n"; Pour une nouvelle ligne dans XML

ob_start (); écho ' '. "\ n";?>


0 commentaires