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

admin6年前IT技术1592

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

 

相关文章

解决Cannot load php7apache2_4.dll into server导致无法启动Apache

萌新在面对服务端开发使用PHP搭配Apache时会遇见Cannot load php7apache2_4.dll into server 例如 01 最最最主要的问题 Apache...

win10 连接L2TP win7 连接L2TP遇到的问题

win10 连接L2TP win7 连接L2TP遇到的问题

PSK共享密钥文件位置/etc/ipsec.secretswin10无法链接的问题解决方案HKEY_LOCAL_MACHINE>SYSTEM>CurrentControlSet>Se...

etst新上传的产品搜索不到

etst新上传的产品搜索不到,原因有如下几个:1:平台没有更新索引--数据库的一种技术,大概需要7天到15天吧,投广告也没有什么用,只能等2.你的SEO有问题,建议学习一下SEO基础知识与etsy的关...

magento1-2的部分使用经验总结

完成magento 1.x 到2.x的版本测试与服务器速度测试得出结论magento慢的原因软件原因1.javascrip  html css 文件 没有合并与压缩 设置 Merge Jav...

windows 激活

windows 激活

Win7查看系统信息:slmgr.vbs -xpr         键入:slmgr.vbs -ipk FJ82H-XT...

美国年轻人都在玩哪些App[转]

美国年轻人都在玩哪些App[转]

Facebook 它对我们这个年龄的人来说已经死了,Facebook 是我们中学时候玩儿的,但是现在就像尴尬的家庭晚宴一样鸡肋,你会经常遇到这个问题:「别人都用 Facebook,你怎么不用?」(貌似...

发表评论    

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