如何使用的DomDocument编写XML自动关闭标签(How to write XML self

2019-10-20 03:05发布

我与PHP的工作产生XML,我使用的DomDocument生成XML标签,使用的DomDocument我如何创建自关闭标签?

$doc2 = new DOMDocument();
$root2 = $doc2->createElement('root', '');

预期输出:

<?xml version="1.0"?><root/>

实际结果:

<?xml version="1.0"?><root></root>

是否有任何其他的方式来产生自闭标签?

PS:请不要关闭了一个问题,我不认为这是一个重复。 谢谢。

Answer 1:

提供了空字符串第二个参数的createElement()将一个空textnode到元件节点。 不为空的的元件不能被优化。 如果没有参数DOM优化XML。

$dom = new DOMDocument();
$dom->appendChild($dom->createElement('root'));
echo $dom->saveXml();

输出:

<?xml version="1.0"?>
<root/>

下面是saveXml)的选项(以避免优化。

$dom = new DOMDocument();
$dom->appendChild($dom->createElement('root'));
echo $dom->saveXml(NULL, LIBXML_NOEMPTYTAG);

输出:

<?xml version="1.0"?>
<root></root>


文章来源: How to write XML self closing tag using DomDocument