php - XPath 查询返回空值

标签 php html xpath domxpath

我有这个 HTML 片段:

<td class="alt1 icon smallfont" align="center">
    <div class="cal_imp_high" title="High Impact Expected"/>
</td>

我尝试使用此 XPath 查询获取内部 div 的类值,即 cal_imp_high:

$xpath->query('//td[@class="alt1 icon smallfont"]/div[@class]/@class');

但它什么也没显示,我不知道出了什么问题。请有人帮助我。

最诚挚的问候。

最佳答案

您的 XPath 查询对我来说效果很好。

<?php
echo phpversion(), "\n";
$doc = new DOMDocument;
$doc->loadxml( <<< eox
<td class="alt1 icon smallfont" align="center">
    <div class="cal_imp_high" title="High Impact Expected"/>
</td>
eox
);
$xpath = new DOMXPath($doc);

foreach( $xpath->query('//td[@class="alt1 icon smallfont"]/div[@class]/@class') as $n ) {
    echo 'class: ', $n->nodeValue, "\n";
}

输出:

5.4.7
class: cal_imp_high

关于php - XPath 查询返回空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13930461/

相关文章:

templates - Visual Studio 2012/2013 XSL XPATH 项目

php - 在人类中对 MySQL 进行排序

php - 升级php7.0到php7.2

php - "Access Denied Code 5"Symfony2/Doctrine2 PHP重命名错误

html - 在固定的 div 位置下滚动时隐藏页面内容

javascript - 加载html后如何获取容器高度

c# - 需要一种方法将任何类型的节点从 BizTalk 规则引擎内传递给自定义函数

PHP - LocalHost数据库简单连接SQL

html - HTML 中的 data-cfsrc 是什么

java - 不同位置节点的通用 xpath