3

我正在使用 php dom 函数nodeValue来提取内容的文本。但它也返回后代值:

<example>
<inhalt>123<more>45</more></inhalt>
</example>

根据我的喜好返回inhalt12345 和 123。我知道在里面放文字是没有意义的,也不是很好,但是我inhalt如何检查里面是否没有文字?inhalthasNodeValue

4

1 回答 1

3

正如菲尔提到的那样,文本也是按节点组织的。因此,您的节点inhalt有两个子节点:一个文本节点(“123”)和一个名为more的元素节点,它还有一个文本节点(“45”)。

如果您只是想知道,如果元素之前有文本more,请测试是否至少有一个元素,然后测试第一个元素是否为文本(据我记得应该是DOMText )。

如果您想知道,如果“根”处至少有一个元素,请遍历所有子元素并进行相同的测试。

http://www.php.net/manual/en/class.domtext.php

于 2010-11-15T01:18:05.683 回答