DOM DOMDocument::importNode
(PHP 5, PHP 7, PHP 8)
DOMDocument::importNode — 노드를 현재 문서로 가져오기
설명
public DOMDocument::importNode(DOMNode $node
, bool $deep
= false
): DOMNode|false
이 함수는 가져올 노드의 복사본을 반환하고 현재 문서와 연결합니다.
매개변수
node
- 가져올 노드입니다.
deep
true
로 설정하면 이 메서드는node
아래의 하위 트리를 재귀적으로 가져옵니다.메모: 노드 속성을 복사하려면
deep
를true
로 설정해야 합니다.
반환 값
복사된 노드 또는 복사할 수 없는 경우 false
입니다.
오류/예외
노드를 가져올 수 없는 경우 DOMException이 발생합니다.
Examples
예제 #1 DOMDocument::importNode() 예제
문서 간에 노드를 복사합니다.
<?php
$orgdoc = new DOMDocument;
$orgdoc->loadXML("<root><element><child>text in child</child></element></root>");
// The node we want to import to a new document
$node = $orgdoc->getElementsByTagName("element")->item(0);
// Create a new document
$newdoc = new DOMDocument;
$newdoc->formatOutput = true;
// Add some markup
$newdoc->loadXML("<root><someelement>text in some element</someelement></root>");
echo "The 'new document' before copying nodes into it:\n";
echo $newdoc->saveXML();
// Import the node, and all its children, to the document
$node = $newdoc->importNode($node, true);
// And then append it to the "<root>" node
$newdoc->documentElement->appendChild($node);
echo "\nThe 'new document' after copying the nodes into it:\n";
echo $newdoc->saveXML();
?>
위의 예는 다음을 출력합니다.
The 'new document' before copying nodes into it: <?xml version="1.0"?> <root> <someelement>text in some element</someelement> </root> The 'new document' after copying the nodes into it: <?xml version="1.0"?> <root> <someelement>text in some element</someelement> <element> <child>text in child</child> </element> </root>