我是DOMDocument类的新手,似乎无法找到我想要做的答案。
我有一个大的html文件,我想从基于锚文本的元素中获取链接。
所以例如
$html = <<<HTML
<div class="main">
<a href="http://link.com" target="blank" ><span><font style="color: #e7552c;"><img src="http://images.com/spacer.gif"/>Keyword</font></span></a>
other text
</div>
HTML;
// domdocument
$doc = new DOMDocument();
$doc->loadHTML($html);
我想获取具有文本关键字的任何元素的href属性的值。希望很清楚
答案 0 :(得分:0)
$html = <<<HTML
<div class="main">
<a href="http://link.com" target="blank" ><span><font style="color: #e7552c;"><img src="http://images.com/spacer.gif"/>Keyword</font></span></a>
other text
</div>
HTML;
$keyword = "Keyword";
// domdocument
$doc = new DOMDocument();
$doc->loadHTML($html);
$as = $doc->getElementsByTagName('a');
foreach ($as as $a) {
if ($a->nodeValue === $keyword) {
echo $a->getAttribute('href'); // prints "http://link.com"
break;
}
}