这是一个代码:
<?php
$html = <<< HTML
<div id="one">
<h1>header 1</h1>
<h2>header 2</h2>
<blockquote>
<p>paragraph1</p>
<p>paragraph2</p>
</blockquote>
<b>bold text1</b>
<b>bold text2</b>
</div>
HTML;
$dom = new DOMDocument();
@$dom->loadHTML($html);
/******************3rd part*************/
echo $dom->childNodes->item(0)->nodeName."<br>";
echo $dom->childNodes->item(1)->nodeName."<br>";
/**********1st part**********/
$tags = $dom->getElementsByTagName("blockquote");
foreach($tags as $tag)
{
$ps=$tag->getElementsByTagName("p");
foreach($ps as $p)
{
echo $p->nodeValue."<br>";
}
}
/************2nd part**********/
$tags = $dom->getElementById("one");
foreach($tags as $tag)
{
$hs=$tag->getElementsByTagName("h1");
foreach($hs as $h)
{
echo $h->nodeValue."<br>";
}
}
&GT;
请以示例教我:
<h2>header 2</h2>
这是一个单一的节点吗?我已经从here阅读了@ Gordon的回答,但我需要一些明确的例子。
答案 0 :(得分:1)
<div id="one">
注意所有h1,h2和blockquote节点都是这个节点的子节点。$dom->getElementById(0);
将返回第一个元素。 $dom->getElementById(1);
将返回第二个(如果存在)id
是此标记中<div id="one">
我把剩下的留给其他SO用户。