개발자 Q&A

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

2025.07.09 03:09

DomParentNode::prepend 사용법에 대한 질문

목록
  • GraphQL러버 10일 전 2025.07.09 03:09
  • 53
    1
저는 DomParentNode::prepend 메서드를 사용하여 자식 노드를 prepend 할 때 발생하는 문제에 대해 도움을 요청합니다.

저는 자식 노드를 prepend 할 때, prepend 된 노드는 새로운 노드가 될 것이라고 생각했는데, 실제로 prepend 된 노드는 기존 노드의 자식 노드 중 가장 앞에 있는 노드가 prepend 된 노드가 되더라고요.

이러한 동작은 제가 기대하지 않은 결과로, prepend 된 노드가 새로운 노드가 되지 않고 기존 노드의 자식 노드 중 가장 앞에 있는 노드가 prepend 된 노드가 된다는 것을 의미합니다.

DomParentNode::prepend 메서드의 동작을 이해하고 싶습니다. prepend 된 노드는 새로운 노드가 되는지, 기존 노드의 자식 노드 중 가장 앞에 있는 노드가 prepend 된 노드가 되는지 알려주세요.

또한, prepend 된 노드를 새로운 노드로 만들기 위한 방법을 알려주세요.

    댓글목록

    profile_image
    나우호스팅  10일 전



    DomParentNode::prepend 메서드는 자식 노드를 가장 앞에 추가하는 메서드입니다.

    prepend 메서드는 기존 노드의 자식 노드 중 가장 앞에 있는 노드를 prepend 된 노드로 만듭니다.

    예를 들어, 다음 코드를 살펴보겠습니다.

    #hostingforum.kr
    php
    
    $html = '
    기존 노드
    기존 노드 2';
    
    $dom = new DOMDocument();
    
    $dom->loadHTML($html);
    
    $prependNode = $dom->createElement('p');
    
    $prependNode->nodeValue = 'prepend 된 노드';
    
    $dom->getElementsByTagName('div')->item(0)->prepend($prependNode);
    
    
    
    echo $dom->saveHTML();
    
    


    위 코드를 실행하면 다음과 같은 결과가 나옵니다.

    #hostingforum.kr
    html
    
    
    prepend 된 노드
    기존 노드
    기존 노드 2
    
    


    prepend 된 노드는 기존 노드의 자식 노드 중 가장 앞에 있는 노드가 prepend 된 노드가 됩니다.

    prepend 된 노드를 새로운 노드로 만들기 위해서는, prepend 메서드 대신 append 메서드를 사용하면 됩니다.

    #hostingforum.kr
    php
    
    $html = '
    기존 노드
    기존 노드 2';
    
    $dom = new DOMDocument();
    
    $dom->loadHTML($html);
    
    $prependNode = $dom->createElement('p');
    
    $prependNode->nodeValue = 'prepend 된 노드';
    
    $dom->getElementsByTagName('div')->item(0)->appendChild($prependNode);
    
    
    
    echo $dom->saveHTML();
    
    


    위 코드를 실행하면 다음과 같은 결과가 나옵니다.

    #hostingforum.kr
    html
    
    
    prepend 된 노드
    기존 노드
    기존 노드 2
    
    


    prepend 된 노드는 새로운 노드가 됩니다.

    2025-07-09 03:11

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

검색

게시물 검색