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

admin6年前IT技术2443

原文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']

 

相关文章

WINDOWS 10 PPTP服务器的搭建流程

WINDOWS 10 PPTP服务器的搭建流程

Windows Server 2003/2008/2008 R2的方法是完全一样的,没有任何区别。不过2008 R2系统要先打开服务管理,添加角色,安装“网络策略和访问服务”,...

解决Win+x打开终端提示无法找到wt.exe,无法打开windows终端

C:\Windows\System32\WindowsPowerShell\v1.0查看一下powershell是否可以打开,如果可以打开则说明系统的powershell终端还在,引用的读取路径被篡改...

phptool phpfmt这两个插件会导致sublime出问题

 phptool 会让sublime产生垃圾文件phpfmt会导致sublime出死机,但是他能修正错误的PHP写法,要区别对待他,但是一个文件页面代码多了,他会导致sublime死机...

服务器上使用WMI报 '80041003' Automation 错误的解决办法

服务器上使用WMI报 '80041003' Automation 错误的解决办法

我在网上找的获取cpuid的vb代码,直接在vb中运行正常,我把它打包成dll文件,在asp中引用总是报下面错误 原因:'80041003'  Automation 错误&nbs...

汇成学校建站CMS系统V3.0

汇成学校建站CMS系统V3.0 ˂a target="_blank" href="download/hcschoolv3.0.rar"˃官方下载后台地址:您的地址/admin/login.a...

发表评论    

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