如何在 PHP 中使用 DOMDocument 检测 XML 元素是否为空?

Arj*_*jaj 3 php xml domdocument

如果我删除元素内的元素,并且它是最后一个元素,则父元素将缩短为空元素。

例子:

开始: <element><child1>Inner HTML</child1><child2>Inner HTML</child2></element>

我删除 Child2 并得到: <element><child1>Inner HTML</child1></element>

我删除 Child1 并得到: <element/>

现在我希望这种情况不会发生,或者至少有一种方法可以检测该元素是否为空,以便我可以替换它。我如何使用 PHP 中的 DOMDocument 来做到这一点。

谢谢...

Gum*_*mbo 5

您应该能够通过检查子节点列表的长度来确定元素是否为空:

$isEmpty = $elem->childNodes->length === 0;
Run Code Online (Sandbox Code Playgroud)

请注意,不仅元素可以是另一个元素的子节点,还可以是CDATA 节注释纯文本