如果simplexml addChild中的值为空,如何避免快捷方式关闭的xml标记?

时间:2016-06-29 04:14:36

标签: php xml simplexml

我使用PHP SimpleXML创建了一个xml生成器,现在的问题是,只要有空值,添加的元素就是插入一个快捷方式的封闭标记,而不是一个完整的标记。像例如

而不是

<mytag></mytag>

输出正在给我这个

<mytag/>

如何使用PHP的simpleXMLElement的addChild()修复此问题?

1 个答案:

答案 0 :(得分:1)

自闭标签是XML的正常部分,因此通常情况下,您不必担心它们。但是,如果你真的想要避免使用它们并使用完整的<mytag></mytag>即使是空的,SimpleXML没有那个选项但是DOM没有,你可以在输出时转换为DOM。

例如,如果您正在使用

$xml->asXML()

将其更改为

dom_import_simplexml($xml)->ownerDocument->saveXML(null, LIBXML_NOEMPTYTAG);