提取href属性和使用价值PHP DOM解析器
问题描述:
从给定的标记我要提取的超级链接和超链接提取href属性和使用价值PHP DOM解析器
<span></span>
<span>Chapter1</span>
<span><a href="page2.htm">Chapter2</a></span>
<span><a href="page3.htm">Chapter3</a></span>
的这种情况的所有头衔,我已经写了follwing代码,但它不工作
$doc = new DOMDocument();
$doc->loadHTML($page_links);
$tags = $doc->getElementsByTagName('span');
foreach ($tags as $tag) {
echo '\n'.$tag->nodeValue;
if($tag->hasChildNodes()) {
echo $tag->childNodes->getAttribute('href');
} else {
echo 'default.htm';
}
}
我期待这样的输出:
Chapter1 default.htm
Chapter2 page2.htm
Chapter3 page3.htm
等
答
你能试试吗?
$doc = new DOMDocument();
$doc->loadHTML($page_links);
$tags = $doc->getElementsByTagName('span');
for($i=0;$i<$tags->length;$i++){
echo $tags->item($i)->nodeValue;
if($tags->item($i)->hasChildNodes()) {
if($tags->item($i)->firstChild->nodeName=='a'){
echo " ".$tags->item($i)->firstChild->getAttribute('href').'<br/>';
}else{
echo " default.htm<br/>";
}
}
}