首頁 > 後端開發 > php教程 > 您可以刪除已載入的 DOMDocument 中的元素而不建立新元素嗎?

您可以刪除已載入的 DOMDocument 中的元素而不建立新元素嗎?

Susan Sarandon
發布: 2024-10-31 01:49:02
原創
834 人瀏覽過

 Can You Delete Elements in a Loaded DOMDocument Without Creating a New One?

使用 DOMDocument 刪除元素

操作 HTML 文件是 Web 開發人員的常見任務。在 PHP 中,DOMDocument 類別提供了解析和操作 HTML 程式碼的便捷方法。雖然可以從頭開始建立新的 DOMDocument,但在許多情況下,將現有文件載入到 DOMDocument 物件中會更有效。

修改 HTML 文件時最常見的操作之一是刪除元素。讓我們考慮以下 HTML 程式碼:

<code class="html"><p><a href="#">First</a></p>
<p><a href="#">Second</a></p>
<p><a href="#">Third</a></p></code>
登入後複製

問:是否可以刪除載入的 DOMDocument 中的元素而不建立新元素?

<code class="php">$dom = new DOMDocument('1.0', 'utf-8');
$dom->loadHTML($html);

foreach ($dom->getElementsByTagName('a') as $href) {
    if ($href->nodeValue == 'First')
        // delete
}</code>
登入後複製

答:是的,可以從載入的DOMDocument 中刪除元素而不建立新元素:

<code class="php">$href->parentNode->removeChild($href);</code>
登入後複製

這種方法直接修改原始DOMDocument 物件。 DOMNode::$parentNode 屬性引用目前節點的父節點,DOMNode::removeChild() 方法從父節點中刪除指定的子節點。

使用DOMDocuments 的其他資源:

  • [DOMNode::$parentNode 文件](https://www.php.net/manual/en/domnode.parentnode.php)
  • [DOMNode::removeChild() 文件](https://www.php.net/manual/en/domnode.removechild.php)
  • 如何使用PHP DOMDocument 移除屬性?
  • 如何使用 PHP 刪除 HTML 元素DOMDocument 類別

以上是您可以刪除已載入的 DOMDocument 中的元素而不建立新元素嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板