您必须将CDATA节附加到所需的元素中:
$dom = new DOMDocument('1.0', 'utf-8');
$dom->appendChild($dom->createElement('translations'))
->appendChild($dom->createElement('denmark'))
->appendChild($dom->createElement('error'))
->appendChild($dom->createCDataSection('ä å'));
$dom->formatOutput = true;
echo $dom->saveXml();
输出:
但是在使用UTF-8时,无需将?和?放入CDATA节中:
$dom = new DOMDocument('1.0', 'utf-8');
$dom->appendChild($dom->createElement('translations'))
->appendChild($dom->createElement('denmark'))
->appendChild($dom->createElement('error', '? and ?'));
$dom->formatOutput = true;
echo $dom->saveXml();
输出完全有效:
? and ?