Регистрация Войти
Войти через VK Войти через FB Войти через Google Войти через Яндекс
Войти через VK Войти через FB Войти через Google Войти через Яндекс
Поиск по сайту
DOMNode::removeChild
(PHP 5)
DOMNode::removeChild — Удаляет дочерний узел из списка потомков
Описание
DOMNode DOMNode::removeChild ( DOMNode $oldnode )Эта функция удаляет дочерний узел из списка потомков.
Список параметров
oldnode
Удаляемый дочерний узел.
Возвращаемые значения
Функция возращает удаляемый дочерний узел, если он может быть удален.
Ошибки
DOM_NO_MODIFICATION_ALLOWED_ERR
Возникает, если узел доступен только для чтения.
DOM_NOT_FOUNDВозникает, если oldnode не является дочерним узлом данного узла.
Примеры
Следующий пример удаляет элемент chapter (глава) из XML-документа.
Пример #1 Удаление дочернего узла
$doc = new DOMDocument;
$doc->load('book.xml');
$book = $doc->documentElement;
// находим главу (chapter) и удалям из книги (book)
$chapter = $book->getElementsByTagName('chapter')->item(0);
$oldchapter = $book->removeChild($chapter);
echo $doc->saveXML();
Результат выполнения данного примера:
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"> <book id="listing"> <title>My lists</title> </book>
Пример #2 Сохраняем URI пространства имен родительского узла
$doc = new DOMDocument;
$doc->load('book.xml');
$book = $doc->documentElement;
// находим главу (chapter) и удалям из книги (book)
$chapter = $book->getElementsByTagName('chapter')->item(0);
// копируем URI пространства имен
$nsuri = $book->namespaceURI;
// удаляем дочерний узел
$book->removeChild($chapter);
// вставляем URI пространства имен обратно в родительский узел
$book->namespaceURI = $nsuri;
Примечания
Замечание:
После вызова этого метода свойство DOMNode::$namespaceURI родительского узла сбрасывается в NULL. В примере выше показано, как это обойти.
Смотрите также
- DOMNode::appendChild() - Добавляет новый дочерний узел в конец списка потомков
- DOMNode::replaceChild() - Заменяет дочерний узел
Описание класса domnode, примеры использования класса domnode.
Описание на ru2.php.netОписание на php.ru