我的功能需要從HTML代碼的一部分獲得所有第一級HTML標籤,以便我可以使用每個HTML代碼。PHP&Xpath:獲取所有第一級HTML標籤(所有兄弟)
這是我的HTML文檔總結如下:
<p>The breed was first...</p>
<p>Semencic credits his...</p>
<h1>Appearance</h1>
<p>The breed's distinctive...</p>
<p>It should be symmetrical...</p>
<figure id="attachment_6" style="width: 840px" class="wp-caption alignnone">
<img class="size-large wp-image-6" src="...jpg" alt="boerboel appearance" width="840" height="746">
<figcaption class="wp-caption-text">The dog appearance.</figcaption>
</figure>
<h1>Requirements</h1>
<p>Prospective owners....</p>
<p>These dogs....</p>
<h2>A Little Warning!</h2>
<p>If you are considering...</p>
<blockquote>
<p>According to...</p>
<p>Source: http://...</p>
</blockquote>
<p>Although more suitable...</p>
現在,我想我的輸出是:
p
p
h1
p
p
figure
h1
p
p
h2
p
blockquote
p
但現在,它是:
h1
p
h1
p
h2
p
blockquote
p
有有幾件事是錯誤的: - '圖'沒有顯示 - 標準桿阿格拉夫標籤單挑,即使有幾個兄弟姐妹 - 第一p的都沒有發現
$doc = new DOMDocument();
$doc->loadHTML($this->post_content, LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);
$xpath = new DOMXpath($doc);
$nodes = $xpath->query("/*/*");
foreach ($nodes as $node) {
echo $node->nodeName;
echo '<br>';
$this->add_part(
md5($node->textContent),
$node->nodeName
);
}
我認爲你必須發佈真實的HTML代碼。您的代碼適用於我,使用由標籤包裝的HTML樣本。 – fusion3k
我的html代碼是真正的html代碼,沒有標籤包裝所有這一切。 – Lazhar