XML, CDATA, PHP und SIMPLEXML

frede_

Grünschnabel
Hallo, allerseits!
Ich möchte mittels Php eine Xml erstellen und habe mich der Einfachheit halber für SimpleXML entschieden. Soweit so gut.
Jedoch möchte ich CDATA in einen Knoten einfügen.
nach diesem Schema:

<referenzen>
<referenz titel="überschrift"><![CDATA[bla bla bla]]></refernenz>
</referenzen>

Wenn ich jedoch in den Knoten Inhalt schreiben möchte, werden < und > in HTML codiert.

PHP:
$referenz = $xml->addChild('referenz');
$referenz->addAttribute('titel',$_POST['headline']);
$xml->referenz[$i] = "<![CDATA[".$_POST['description']."]]>";
$xml->asXML("./referenzen.xml");

wie kann ich das umgehen? gibt es noch andere möglichkeiten, als einfach eine file "hart" zu schreiben. verträgt sich domxml und simplexml? wie kann ich dieses Problem mit SimpleXml lösen?
 
Hi,

wieso schreibst Du da "<![CDATA[Wert..." als Wert rein? Da kommt nur "Wert" rein. Versuch's mal so:

PHP:
$referenz = $xml->addChild('referenz', $_POST['description']);
$referenz->addAttribute('titel',$_POST['headline']);
$xml->asXML("./referenzen.xml");

LG

PS.: Thread pushen wird hier glaube ich nicht so gerne gesehen...
 
Hätte ja sein können, das schon mal jemand dieses Problem bearbeitet hat. Leider scheint das wirklich nur über eigene Funktionen möglich zu sein. Ich habe jedoch bedenken mit korrekten Xml-Files.
Bin gern für Lösungsvorschläge offen, jedoch ein bisschen enttäuscht. Ich hätte gedacht hier sind solche grundlegenden Probleme Schnee von gestern.

Grüße
 
Zurück