1

考虑到您只搜索一个特定的值,是否可以直接获得唯一的第一个结果而不用 foreach 解析结果?像这样:

$elements = $dom_xpath->query('//span[@id="loginName"]');


echo $elements->firstNode->nodeValue; // this doesn't exist of course

html代码是

<div>
  <div id="name">text<span id="loginName">Me</span></div>
</div>
4

2 回答 2

4

如果您需要检索该<span>元素内的纯文本字符串,即"Me",您可以使用evaluate代替query

$xp->evaluate('string(//span[@id="loginName"])')

这可能是您正在寻找的更多内容。它返回:

string(2) "Me"

可能这很有帮助,否则,乔恩写的。

于 2012-04-15T18:10:31.080 回答
3

如果你确定会有匹配,你可以使用

echo $dom_xpath->query('//span[@id="loginName"]')->item(0)->nodeValue;
于 2012-04-15T17:12:15.257 回答