函式名稱:DOMChildNode::remove()
函式描述:DOMChildNode::remove() 方法刪除當前節點的子節點。
適用版本:PHP 8.0.0 及以上
語法:DOMChildNode::remove()
返回值:該方法沒有返回值。
用法及示例:
- 刪除當前節點的所有子節點:
$dom = new DOMDocument();
$dom->loadXML('<root><child1/><child2/><child3/></root>');
$root = $dom->documentElement;
$childNodes = $root->childNodes;
foreach ($childNodes as $child) {
$child->remove();
}
echo $dom->saveXML();
輸出:
<root></root>
在上面的示例中,我們建立了一個包含三個子節點的 XML 文件。然後,使用DOMChildNode::remove()
方法迴圈刪除每個子節點,最後將更新後的 XML 結果進行輸出。
- 刪除當前節點的特定子節點:
$dom = new DOMDocument();
$dom->loadXML('<root><child1 id="1"/><child2 id="2"/><child3 id="3"/></root>');
$root = $dom->documentElement;
$children = $root->getElementsByTagName('child2');
foreach ($children as $child) {
$child->remove();
}
echo $dom->saveXML();
輸出:
<root><child1 id="1"/><child3 id="3"/></root>
在上述示例中,我們首先載入一個包含三個帶有不同 id 屬性值的子節點的 XML 文件。然後,使用getElementsByTagName()
方法選擇具有特定標籤名的子節點,在本例中選擇了標籤名為"child2"的子節點。然後使用DOMChildNode::remove()
方法刪除所選的子節點。最後,將更新後的 XML 結果進行輸出。
注意事項:
DOMChildNode::remove()
方法只能用於 DOM 擴充套件提供的物件,如DOMElement
、DOMAttr
等。- 從 PHP 8.0.0 版本開始,該方法已在 DOM 介面中放置,因此不再是一個獨立的全域性函式,而是作為一個 DOM 介面的成員方法進行呼叫。