簡體   English   中英

在PHP中使用XPath和DOM獲取表單元格TD值

[英]Getting table cell TD value using XPath and DOM in PHP

我需要通過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的各種技術,但是沒有運氣。

DOMXPath :: query()返回DOMNodeList,即使只有一個匹配項也是如此。

如果您確定在那里有比賽,可以使用

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

但是,如果要防彈,最好事先檢查一下長度,例如

if ($myValue->length > 0) {
    echo $myValue->item(0)->nodeValue;
} else {
    //No such cell. What now?
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM