0
我有以下HTML结构:domXpath得到祖先节点
<a class="class1" href="link">
<div class="class2" id="result_0">
<img imgstuffhere />
<div class="class3">
<span>text</span>
</div>
</div>
</a>
<a class="class1" href="link">
<div class="class2" id="result_0">
<img imgstuffhere />
<div class="class3">
<span>text</span>
</div>
</div>
</a>
etc....
我解析使用domXPath的页面。我能够通过对结果集的项目做
$items = $xpath->query("//*[contains(concat(' ', normalize-space(@class), ' '), ' class1 ')]");
然后i循环得到每个块:
foreach($items as $item){
$name = $xpath->query("descendant::*[contains(concat(' ', normalize-space(@class), ' '), ' class3 ')]", $item)->item(0)->nodeValue;
etc...
}
我的问题是,在循环中,我需要得到位于在href链接class1节点。
我试图玩弄祖先的东西,但不可能使其工作。
ANSWER
$link = $item->getAttribute('href');
根本的伎俩。
不是$项目''元素?你已经拥有了它。 – Jessica
'contains(concat('',normalize-space(@class),'','class1')'可以通过编写contains(@class,'class1')' – ChicagoRedSox
@Jessica来提高效率,但我如何获得链接? – user2733521