php DOM Entity escape
JayDalton
- php
Hallo,
ich habe ein Problem mit dem Maskieren von Escapesequenzen beim Erstellen von XML-Strukturen unter Verwendung des XSLTProcessor's.
Etwas Hilfe habe ich hier im Forum unter dem Tread 'DOMDocument mag Sonderzeichen nicht' aus dem Archiv 2006 schon erhalten. Jedoch trifft es meine Problematik nicht ganz.
Die Sache mit den Sonderzeichen einer jeden Sprache und deren Maskierung glaube ich verstanden zu haben. Nun möchte ich jedoch noch zusätzlich Sonderzeichen, welche nicht vom XSLTProcessor interpretiert werden sollen, in meine DOM Struktur einbinden. Dabei scheint es irrelevant zu sein ob ich den Inhalt in einen TextNode oder ein Attribute hinzufüge.
Ein Beispiel:
$dom = new DOMDocument("1.0", "UTF-8");
$nl = $dom -> appendChild(new DOMElement("nightlife"));
$nl -> setAttribute("test", "Absatz_1 <br /> Absatz_2");
$xsl = new DOMDocument();
$xsl -> load("xsl/navigation.xsl");
$proc = new XSLTProcessor();
$proc -> importStyleSheet($xsl);
Zwischenschritt:
echo $dom -> saveXML();
Die Ausgabe sieht wie folgt aus:
<nightlife test="Absatz_1 <br /> Absatz_2" />
Nun mein Problem. Bei der Weiterverarbeitung mit
echo $proc->transformToXML($dom);
werden die maskierten Elemente zwar für den USER sichtbar aber der Browser interpretiert sie nicht mehr.
Mache ich oder denke ich verkehrt? Gibt es andere Lösungsansätze
Freue mich auf Antwort.