DOMDocument::importNode - Импорт узла в текущий документ
Вернуться к: DOMDocument
DOMDocument::importNode
(PHP 5, PHP 7)
DOMDocument::importNode — Импорт узла в текущий документ
Описание
Эта функция возвращает копию импортируемого узла и присоединяет ее к текущему документу.
Список параметров
-
importedNode
-
Импортируемый узел.
-
deep
-
Если установлен в
TRUE
, этот метод рекурсивно импортирует поддерево узлаimportedNode
.Замечание:
Чтобы скопировались атрибуты узла,
deep
должен быть установлен вTRUE
.
Возвращаемые значения
Скопированный узел или FALSE
, если он не может быть скопирован.
Ошибки
Если узел не может быть импортирован, будет выброшено исключение DOMException.
Примеры
Пример #1 Пример использования DOMDocument::importNode()
Копирование узлов между документами.
<?php
$orgdoc = new DOMDocument;
$orgdoc->loadXML("<root><element><child>text in child</child></element></root>");
// Узел, который будет импортирован в новый документ
$node = $orgdoc->getElementsByTagName("element")->item(0);
// Создание нового документа
$newdoc = new DOMDocument;
$newdoc->formatOutput = true;
// Добавление разметки
$newdoc->loadXML("<root><someelement>text in some element</someelement></root>");
echo "Новый документ перед добавлением в него узлов:\n";
echo $newdoc->saveXML();
// Импорт узла и всех его потомков в документ
$node = $newdoc->importNode($node, true);
// И затем добавление узла в корень элемента
$newdoc->documentElement->appendChild($node);
echo "\nНовый документ после добавления в него узлов:\n";
echo $newdoc->saveXML();
?>
Результат выполнения данного примера:
Новый документ перед добавлением в него узлов: <?xml version="1.0"?> <root> <someelement>text in some element</someelement> </root> Новый документ после добавления в него узлов: <?xml version="1.0"?> <root> <someelement>text in some element</someelement> <element> <child>text in child</child> </element> </root>
Вернуться к: DOMDocument