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

admin6年前IT技术2154

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

 

相关文章

excel 批量粘贴图片的方法

1.e2是图片地址在表格下拉,批量输入="<table><img src="&e2&" height=100&nbs...

通过IP获取MAC地址

关键知识点:ARP缓存时间是十分钟;实现的命令是:第一步  ping  ip第二部  arp -a基础解释:在底层的网络通信中,两个节点想要相互通信,必须先要知道源与目标...

docker的感悟

1.容器是类实例化的对象,镜像是静态的类2.查看正在运行的容器docker ps ,查看所有容器包含停止与暂停的docker ps;3.拉去官方镜像:docker pull 镜像名称4.docker...

sublime编译运行PHP

创建PHP编译系统添加 PHP 的 build system,如图所示, Tools->Build System-> New Build System :新建一个,默认的内容是:{&nbs...

Ubuntu使用超级用户权限root

su认证失败刚刚装完Ubuntu后,root用户默认是被锁定的。此时我们在终端输入su会显示认证失败。解决方法Ubuntu安装完第一件事在终端输入sudo passwd root...

acme.sh 使用文档

acme.sh 使用文档

这是acme.sh的使用文档,介绍了如何使用ACME协议自动管理和获取SSL/TLS证书,包括安装、注册、手动和自动签发证书,以及自动部署和更新证书的过程。ACME是"Automatic C...

发表评论    

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