Bonjour,
Je souhaite générer un flux xml, contenant du code Html, en utilisant la librairie Dom.
Le code suivant fonctionne :
et me génére le fichier xml suivant :
Par contre la génération du fichier xml noeud par noeud ne fonctionne pas :
L'erreur est la suivante :
Warning: DOMDocument::save() [function.DOMDocument-save]: output conversion failed due to conv error, bytes 0xE9 0x20 0xE8 0x20
Je pense que j'utilise mal l'attribut encoding et stylesheet mais je n'arrive pas à mettre la main sur de la documentation.
D'avance merci
Je souhaite générer un flux xml, contenant du code Html, en utilisant la librairie Dom.
Le code suivant fonctionne :
<?php
$xml = new DomDocument;
$xml->loadXml("<?xml version='1.0' encoding='ISO-8859-1'?><?xml-stylesheet type='text/xsl'?><logitheque><logiciel><commentaire>Test html avec des accents é è à @. <br/> <br/><br/> <b>fdsqfd</b> </commentaire></logiciel></logitheque>");
$xml->save("file1.xml");
?>
et me génére le fichier xml suivant :
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type='text/xsl'?>
<logitheque>
<logiciel>
<commentaire>Test html avec des accents é è à @. <br/> <br/><br/> <b>fdsqfd</b> </commentaire>
</logiciel>
</logitheque>
Par contre la génération du fichier xml noeud par noeud ne fonctionne pas :
dom = new DOMDocument('1.0', 'ISO-8859-1');
$dom->appendChild($dom->createProcessingInstruction('xml-stylesheet', 'type="text/xsl"'));
$element = $dom->appendChild(new DOMElement('logitheque'));
$element2 = $dom->appendChild(new DOMElement('logiciel'));
$element3 = $dom->appendChild(new DOMElement('commentaire', "Test html avec des accents é è à @. <br/> <br/><br/> <b>fdsqfd</b> "));
$element2->appendChild($element3);
$element->appendChild($element2);
$dom->save("file2.xml");
?>
L'erreur est la suivante :
Warning: DOMDocument::save() [function.DOMDocument-save]: output conversion failed due to conv error, bytes 0xE9 0x20 0xE8 0x20
Je pense que j'utilise mal l'attribut encoding et stylesheet mais je n'arrive pas à mettre la main sur de la documentation.
D'avance merci