1
我試圖從HTML的導入片段向正文中添加一個節點(具有子節點)現有的HTML DOM文檔。我一直在嘗試讓節點追加到正確的位置。似乎無法讓PHP appendChild在導入html節點時正常工作
這裏是我的代碼:
$lastnode = $loaded_file->getElementsByTagName('body')->item(0)->lastChild;
$newnode = $editor_doc->getElementsByTagName('body')->item(0)->firstChild;
$newnode = $loaded_file->importNode($newnode, True);
$lastnode->appendChild($newnode);
$loaded_file
是加載一個DOMDocument使用loadHTML一個HTML文件。 $editor_doc
是HTML片段還裝載如使用loadHTML
輸出一個DOMDocument如下:
[Entire document of $loaded_file ending with </html>]
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html><body><p>1974
[the correct html snippet]
</p></body></html>
2問題: 1)片段是在錯誤的地方。我認爲它是作爲身體標記的孩子追加它的,我做錯了什麼? 2)我不知道額外的!DOCTYPE,html,body p和1974文本是從哪裏來的。我的代碼中沒有任何內容增加了這一點。似乎顯示時,我使用appendChild任何東西。
我在做什麼錯?
在此先感謝!