查詢

DOMCharacterData::replaceWith()函式—用法及示例

「 替換當前 DOMCharacterData 節點的內容 」


函式名:replaceWith()

適用版本:PHP 7.2.0 及以上版本(需要啟用 DOM 擴充套件)

用法:DOMCharacterData::replaceWith() 函式用於替換當前 DOMCharacterData 節點的內容。該函式接受一個變數作為引數,在替換時將其轉換為文字節點或者 DOMText 物件。

示例程式碼:

$dom = new DOMDocument();
$dom->loadXML("<root><text>Hello world!</text></root>");

$textNode = $dom->getElementsByTagName('text')->item(0);
$textNode->firstChild->replaceWith("New content");

echo $dom->saveXML();

輸出結果:

<root><text>New content</text></root>

解釋:

  1. 首先建立一個 DOMDocument 物件,並載入一個包含 <text> 節點的 XML。
  2. 透過 getElementsByTagName() 方法獲取 <text> 節點,並使用 item(0) 獲取第一個匹配的節點。
  3. 使用 replaceWith() 方法將 <text> 節點的內容替換為 "New content"。
  4. 最後使用 saveXML() 方法輸出修改後的 XML 結果。

注意事項:

  • replaceWith() 方法會將傳入的引數轉換為文字節點或者 DOMText 物件,如果傳入的引數是字串,會建立一個文字節點;如果傳入的引數是一個 DOMNode 物件,那麼會直接使用該節點進行替換。
  • 如果當前 DOMCharacterData 節點沒有父節點,那麼 replaceWith() 方法將會丟擲一個 DOMException 異常。
補充糾錯
熱門PHP函式
分享連結