En una funcion php estoy creando nodos html utilizando DOM.
Pero tambien debe crear una codigo javascript el cual debe estar encerrado en CDATA.
La siguiente función agrega la sección cdata a un nodo.
Código PHP:
function appendCdata($appendToNode, $text) {
if (strtolower($appendToNode->nodeName) == 'script') {
$cm = $appendToNode->ownerDocument->createTextNode("\n//");
$ct = $appendToNode->ownerDocument->createCDATASection("\n". $text ."\n//");
$appendToNode->appendChild($cm);
$appendToNode->appendChild($ct);
} else {
$ct = $appendToNode->ownerDocument->createCDATASection($text);
$appendToNode->appendChild($ct);
}
}
Código PHP:
$script = $doc->createElement('script');
$this->appendCdata($script, 'algo');
$root->appendChild($script);
Código PHP:
<script>
//
algo
//</script>
?¿?¿?¿?¿?¿?
Porfa donde esta el error???
o acaso el tag:
<![CDATA
debo crear manualemente????