loathsome Skrevet 31. mars 2007 Skrevet 31. mars 2007 Hei, Når jeg legger til data via f. eks addChild / SXML, så blir all HTML omgjort til "htmlspecialchars" o.l - hvordan kan jeg hindre dette? Takk for svar!
stiber Skrevet 31. mars 2007 Skrevet 31. mars 2007 Hei igjen Svaret er enkelt. Du må nesten bruke DOM. Vi kan ta utgangspunkt i den forrige klassen jeg viste deg, og så legge til en metode som heter addHtml / addXml (alt etter hvor strict du vil ha det). Vanligvis ville man putte html i en cdata seksjon, men hvis du absolutt vil putte html i xml-strukturen, så skal ikke jeg stoppe deg Her har du i alle fall begge valgene... PHP <?phpclass mySXML extends simpleXMLElement { public function addCdata($cdata) { $domNode = dom_import_simplexml($this); $cdata = $domNode->ownerDocument->createCDATASection($cdata); $domNode->appendChild($cdata); } public function addHtml($html) { $htmlDoc = new DOMDocument(); $htmlDoc->loadHTML($html); $domNode = dom_import_simplexml($this); $html = $domNode->ownerDocument->importNode($htmlDoc->documentElement, true); $domNode->appendChild($html); } } $sxml = simplexml_load_string('<root/>','mySXML'); $sxml->addHtml('<html><head></head><body><h1>Hurra</h1></body></html>'); echo $sxml->asXML();
loathsome Skrevet 31. mars 2007 Forfatter Skrevet 31. mars 2007 Ah, igjen - tusen takk! Dreven innen XML/DOM, du!
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå