-7
这里是一个代码:DOM文档:一些基本问题
<?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>";
}
}
>
举例请教教我?
- 什么是firstNode和lastNode在$ HTML?如何在这些节点内打印文本?
- 为什么代码的第二部分不打印任何东西?
<h2>header 2</h2>
这是一个单节点吗?- textContet和nodeValue有什么区别?
- textContent,item()和childnodes的概念是什么?
- div#one包含多少个子代?
- 哪些是$ dom的childNodes?我怎样才能打印他们的名字?
- 这段代码的第三部分有什么错误?两条线都显示相同!
我已阅读@ Gordon的答案here,但我需要一些清晰的例子。
对于这类问题感到抱歉。如果我违反规则..请随时删除此帖子 – qmaruf
@qmaruf尝试一次提问一个问题 - 您可能会发现您的一些问题之前已经被提问/回答。 –
您正在将一个无效的HTML片段加载到DOM中 - 它对解析的结构非常挑剔,并且用'@' - 错误的形式抑制了错误。 –