0

我需要通过 DOM / PHP 访问表格单元格值。网页被加载到 $myHTML。我已将 XPath 标识为:

//*[@id="main-content-inner"]/div[2]/div[1]/div/div/table/tbody/tr/td[1]

我想获取单元格中值的文本,如下所示:

$dom = new DOMDocument();
$dom->loadHTML($myHTML);    
$xpath = new DOMXPath($dom);    
$myValue = $xpath->query('//*[@id="main-content-inner"]/div[2]/div[1]/div/div/table/tbody/tr/td[1]');

echo $myValue->nodeValue;

但是我收到“未定义的属性:DOMNodeList::$nodeValue 错误。如何检索此表格单元格的值?我尝试了 stackoverflow 的各种技术,但没有成功。

4

1 回答 1

1

DOMXPath::query() 返回一个 DOMNodeList,即使只有一个匹配项。

如果您确定那里有匹配项,则可以使用

echo $myValue->item(0)->nodeValue;

但是如果你想防弹,你最好提前检查长度,例如

if ($myValue->length > 0) {
    echo $myValue->item(0)->nodeValue;
} else {
    //No such cell. What now?
}
于 2013-08-13T21:04:15.240 回答