我有格,並希望得到7,89
號,我的選擇是PHP簡單的HTML DOM解析器格選擇
<div class="titlePageSprite star-box-giga-star"> 7,89 </div>
$ret['Rating'] = $html->find('div.star-box-giga-star')->content;
,但我得到空數組,我做錯了什麼?
我有格,並希望得到7,89
號,我的選擇是PHP簡單的HTML DOM解析器格選擇
<div class="titlePageSprite star-box-giga-star"> 7,89 </div>
$ret['Rating'] = $html->find('div.star-box-giga-star')->content;
,但我得到空數組,我做錯了什麼?
試試這個:
$ret['Rating'] = $html->find('div.star-box-giga-star', 0)->innertext;
find()
返回匹配查找參數,所有元素的DOMNodeList,即使只有一個(或無)匹配的元素。你可以明確告訴它通過一個可選的參數要返回的節點:
$rating = $html->find('div.star-box-giga-star', 0)
^^^^---return 1st node (0-based)
或一些愚蠢十歲上下像
$nodes = $html->find(...);
foreach($nodes as $node) {
$rating = $node->content;
break;
}
使用XPath,而不是直接:
foreach($xpath->query('//div[contains(@class, "star-box-giga-star")]') as $rating) {
echo $rating->nodeValue, '<br>';
}