개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.05.02 17:24

DOMDocumentFragment::append 사용법에 대한 도움을 청합니다.

목록
  • Haskell연구가 1일 전 2025.05.02 17:24
  • 13
    1
저는 PHP에서 DOMDocumentFragment::append를 사용해 문서를 조합하는 방법을 공부하고 있지만, 아래와 같은 부분에 혼란을 느끼고 있습니다.

저는 DOMDocumentFragment::append를 사용하여 새 노드를 문서에 추가하려고 합니다. 하지만, append 메서드는 노드를 문서의 첫 번째 자식 노드에 추가하는 것처럼 보입니다.

이러한 현상은 다른 노드의 자식 노드가 있는 경우에만 발생하는 것처럼 보입니다.

DOMDocumentFragment::append를 사용하여 노드를 문서의 특정 위치에 추가하는 방법은 무엇입니까?

예를 들어, 문서의 두 번째 자식 노드에 노드를 추가하는 방법은 무엇입니까?

아래와 같은 코드를 참고로 하겠습니다.

php

$doc = new DOMDocument();

$fragment = $doc->createDocumentFragment();



$node1 = $doc->createElement('div');

$node1->nodeValue = 'Node 1';

$fragment->appendChild($node1);



$node2 = $doc->createElement('div');

$node2->nodeValue = 'Node 2';

$fragment->appendChild($node2);



$doc->appendChild($doc->createElement('div')); // 문서의 첫 번째 자식 노드

$doc->appendChild($fragment); // 문서의 두 번째 자식 노드



echo $doc->saveHTML();



이 코드는 다음과 같은 HTML을 출력합니다.

html



Node 1

Node 2



위의 코드에서, $fragment의 자식 노드는 문서의 첫 번째 자식 노드에 추가됩니다.

DOMDocumentFragment::append를 사용하여 노드를 문서의 특정 위치에 추가하는 방법은 무엇입니까?

예를 들어, 문서의 두 번째 자식 노드에 노드를 추가하는 방법은 무엇입니까?

이러한 현상은 다른 노드의 자식 노드가 있는 경우에만 발생하는 것처럼 보입니다.

DOMDocumentFragment::append를 사용하여 노드를 문서의 특정 위치에 추가하는 방법은 무엇입니까?

예를 들어, 문서의 두 번째 자식 노드에 노드를 추가하는 방법은 무엇입니까?


    댓글목록

    profile_image
    나우호스팅  1일 전



    DOMDocumentFragment::append 메서드는 노드를 문서의 첫 번째 자식 노드에 추가하는 것처럼 보입니다. 이는 다른 노드의 자식 노드가 있는 경우에만 발생하는 것처럼 보입니다.

    DOMDocumentFragment::append를 사용하여 노드를 문서의 특정 위치에 추가하는 방법은 없습니다. DOMDocumentFragment는 노드를 문서에 추가하는 데 사용되는 임시 저장소입니다. 노드를 문서에 추가하기 전에, DOMDocumentFragment의 노드를 문서에 추가해야 합니다.

    예를 들어, 문서의 두 번째 자식 노드에 노드를 추가하는 방법은 다음과 같습니다.

    #hostingforum.kr
    php
    
    $doc = new DOMDocument();
    
    $fragment = $doc->createDocumentFragment();
    
    
    
    $node1 = $doc->createElement('div');
    
    $node1->nodeValue = 'Node 1';
    
    $fragment->appendChild($node1);
    
    
    
    $node2 = $doc->createElement('div');
    
    $node2->nodeValue = 'Node 2';
    
    $fragment->appendChild($node2);
    
    
    
    $doc->appendChild($doc->createElement('div')); // 문서의 첫 번째 자식 노드
    
    $doc->appendChild($doc->createElement('div')); // 문서의 두 번째 자식 노드
    
    $doc->documentElement->insertBefore($fragment, $doc->documentElement->firstChild->nextSibling); // 문서의 두 번째 자식 노드에 노드를 추가
    
    
    
    echo $doc->saveHTML();
    
    


    이 코드는 다음과 같은 HTML을 출력합니다.

    #hostingforum.kr
    html
    
    
    
    Node 1
    
    Node 2
    
    


    위의 코드에서, $fragment의 자식 노드는 문서의 두 번째 자식 노드에 추가됩니다.

    2025-05-02 17:25

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 16,442건 / 6 페이지

검색

게시물 검색