php – DOMXpath – 获取一个元素的href属性和文本值[转]

admin5年前IT技术1449

原文https://stackoverflow.com/questions/6820429/domxpath-get-href-attribute-and-text-value-of-an-a-element
       http://www.voidcn.com/article/p-cjeefole-btv.html 

 

所以我有一个这样的 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']

 

相关文章

新建项目project长时间loading彻底删除Android Studio代理设置

修改 C:\Users\Administrator\.gradle\gradle.properties注释如下的语句#systemProp.http.proxyHost=mirrors.opencas...

excel在第三个空格插入数据

=LEFT(RIGHT(C63,LEN(C63)-FIND(" ",C63,FIND(" ",C63,FIND(" ",C63)+1)+1)...

新的电商时代

当信息流电商取代搜索流电商;当千人千面成为淘宝的主推模式;当行业跟着拼多多开始深耕最初一公里,细作最后一公里的时候,一个新的电商时代已经到来。低价打高价,多数打少数,高频打低频...

删除系统还原点,可以释放大量c盘空间

删除系统还原点,可以释放大量c盘空间

删除系统还原点,可以释放大量c盘空间...

excel选取某个字符左边所有内容

=LEFT(C4,FIND("-",C4)-1)...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。