note 47905 deleted from function.domnode-remove-child by sobak
| From: | sobak@php.net | Date: | Tue, 22 Nov 2016 03:42:15 +0000 |
| Subject: | note 47905 deleted from function.domnode-remove-child by sobak | ||
| References: | 1 | Groups: | php.notes |
| Request: | Send a blank email to php-notes+get-207421@lists.php.net to get a copy of this message | ||
Note Submitter: iloveitaly at gmail.com
----
The remove_child() function seems to have a bug. if the parent node of the node you are trying to
delete is the same as the root node it will give you unexpected errors. I fixed this by checking if
the parent node of the node i was deleting was the same as the document node. take a look at the
function below if you are running into the same problem. $this->xmlData reffers to the domxml
object inside the class i was using.
<?php
function deleteNode($ref, $levels) {
$parent = $ref->parent_node();
$root = $this->xmlData->document_element();
if($parent->node_name()==$root->node_name()) {
$parent = $this->xmlData->document_element();
}
if($parent->remove_child($ref)) {
return true;
} else {
exit("error removing node");
}
}
?>