如何从PHP节点获取第一级纯文本?

时间:2015-07-07 11:11:30

标签: php domxpath

以下是我挣扎的简要代码:

<a>value<span>no need</span><a>

我目前正在研究DOMXPath,我需要的是获得标记a的直接值,即&#34;值&#34;,而我实际上得到了额外的&#34;不需要&# 34;使用nodeValue属性时:

$xpath->query('a')->item(0)->nodeValue;//give me "value no need"

如何仅从第一级获取值,排除嵌套节点。 谢谢!

1 个答案:

答案 0 :(得分:1)

你的表达式需要匹配文本节点本身,而不是它的标签,所以f.e。

$xpath->query('a/text()')->item(0)->nodeValue

或者,您可以使用childNodes从&#34; a&#34;导航到文本节点。标记:

$xpath->query('a')->item(0)->childNodes->item(0)->nodeValue