用PHP生成XML文档(转义字符)
我正在从PHP脚本生成XML文档,并且需要转义XML特殊字符。我知道应该转义的字符列表;但是正确的方法是什么?
应该使用反斜杠(')来转义字符还是正确的方法?有内置的PHP函数可以为我处理此问题吗?
回答:
使用DOM类生成整个XML文档。它将处理我们甚至不需要关心的编码和解码。
编辑: 这被@Tchalvak批评:
DOM对象创建了一个完整的XML文档,它不容易将其自身编码为一个字符串。
错了,DOMDocument只能输出一个片段而不是整个文档:
$doc->saveXML($fragment);
这使:
Test & <b> and encode </b> :)Test &amp; <b> and encode </b> :)
如:
$doc = new DOMDocument();$fragment = $doc->createDocumentFragment();
// adding XML verbatim:
$xml = "Test & <b> and encode </b> :)\n";
$fragment->appendXML($xml);
// adding text:
$text = $xml;
$fragment->appendChild($doc->createTextNode($text));
// output the result
echo $doc->saveXML($fragment);
观看演示
以上是 用PHP生成XML文档(转义字符) 的全部内容, 来源链接: utcz.com/qa/410088.html