有没有办法在输出中保留非标准DOM元素(在本例中为';<;%.%>;';)?请参阅下面的代码:


Is there a way to keep non standard DOM element ( in this case '<% .. %>' ) in the output ? see my code below:

有没有办法在输出中保留非标准DOM元素(在本例中为'<%.%>')?

请参阅下面的代码:

$html = '<html>';
$html .= '<body>';
$html .= '<% recipient.name %> ';
$html .='</body>';
$html .='</html>';
$document = new 'DOMDocument('1.0');
$internalErrors = libxml_use_internal_errors(true);
$document->loadHTML($html);
libxml_use_internal_errors($internalErrors);
$out = $document->saveHTML();
print $out;

我得到这个输出:

<html>
<head><meta content="text/html; http-equiv=" content-type></head> 
<body> </body>
</html>

如果输入是有效的XML,则可以将模板标记包装在<![CDATA[…]]>loadXML中,并将它们视为文本节点:

$html = '<html>';
$html .= '<body>';
$html .= '<![CDATA[<% recipient.name %>]]>';
$html .='</body>';
$html .='</html>';
$document = new 'DOMDocument();
$document->loadXML($html);
print $document->saveHTML();
// <html><body><% recipient.name %></body></html>