我有div,想要得到7,89
编号,我的选择器是
<div class="titlePageSprite star-box-giga-star"> 7,89 </div>
$ret['Rating'] = $html->find('div.star-box-giga-star')->content;
但是我得到空数组,我做错了什么?
try this:
$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>';
}