DOMXpath-获取元素的href属性和文本值
所以我有一个这样的HTML字符串:
<td class="name">   <a href="/blah/somename23123">Some Name</a>
</td>
<td class="name">
   <a href="/blah/somename28787">Some Name2</a>
</td>
使用XPath,我可以使用以下Xpath查询来获取href属性的值:
 $domXpath = new \DOMXPath($this->domPage); $hrefs = $domXpath->query("//td[@class='name']/a/@href");
 foreach($hrefs as $href) {...}
而且,获得文本值甚至更容易,如下所示:
 // Xpath auto. strips any html tags so we are  // left with clean text value of a element
 $domXpath = new \DOMXPath($this->domPage);
 $names = $domXpath->query("//td[@class='name']/");
 foreach($names as $name) {...}
现在,我很想知道,我如何才能将这两个查询组合在一起而只用一个查询来获得两个值(如果这甚至是可能的话?)。
回答:
取
//td[@class='name']/a然后使用选中文本,使用选中nodeValue属性getAttribute('href')。
除此之外,您可以将Xpath查询与Union Operator结合使用,|从而可以使用
//td[@class='name']/a/@href|//td[@class='name']也一样
以上是 DOMXpath-获取元素的href属性和文本值 的全部内容, 来源链接: utcz.com/qa/430676.html

