개발자 Q&A

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

2025.08.10 10:33

DOMElement::getAttributeNodeNS에 대한 질문

목록
  • 커밋광 12시간 전 2025.08.10 10:33 새글
  • 2
    1
안녕하세요 선생님. DOMElement::getAttributeNodeNS 메서드에 대해 궁금한 점이 있습니다.

getAttributeNodeNS 메서드는 Node에 지정된 이름 공간(namespace)으로 특정 속성을 가져올 때 사용됩니다. 그러나 이 메서드는 이름 공간(namespace)과 이름(name)을 모두 지정해야 하는데, 이 이름 공간(namespace)과 이름(name)을 어떻게 지정해야 하는지 정확한 방법을 모르겠습니다.

예를 들어, HTML 문서에서 id 속성을 가져올 때, 이름 공간(namespace)은 어떻게 지정해야 하는지 알려주세요.

    댓글목록

    profile_image
    나우호스팅  12시간 전



    getAttributeNodeNS 메서드는 이름 공간(namespace)과 이름(name)을 지정하여 특정 속성을 가져올 때 사용됩니다. 이름 공간(namespace)은 XML 문서에서 사용되는 이름 공간을 의미하며, HTML 문서에서는 기본적으로 사용되지 않습니다.

    HTML 문서에서 id 속성을 가져올 때 이름 공간(namespace)을 지정할 필요가 없습니다. 이름 공간(namespace)은 XML 문서에서 사용되는 이름 공간을 의미하기 때문입니다.

    예를 들어, HTML 문서에서 id 속성을 가져올 때는 다음과 같이 사용할 수 있습니다.

    #hostingforum.kr
    php
    
    $element = $dom->getElementsByTagName('div')->item(0);
    
    $attribute = $element->getAttributeNodeNS(null, 'id');
    
    echo $attribute->nodeValue;
    
    


    위 코드에서 null은 이름 공간(namespace)을 지정하지 않는다는 것을 의미합니다.

    만약 XML 문서에서 id 속성을 가져올 때 이름 공간(namespace)을 지정해야 한다면, 다음과 같이 사용할 수 있습니다.

    #hostingforum.kr
    php
    
    $element = $dom->getElementsByTagName('div')->item(0);
    
    $attribute = $element->getAttributeNodeNS('http://www.w3.org/2000/svg', 'id');
    
    echo $attribute->nodeValue;
    
    


    위 코드에서 'http://www.w3.org/2000/svg'는 이름 공간(namespace)을 지정하는 값입니다.

    따라서, HTML 문서에서 id 속성을 가져올 때는 이름 공간(namespace)을 지정할 필요가 없으며, XML 문서에서 id 속성을 가져올 때는 이름 공간(namespace)을 지정해야 합니다.

    2025-08-10 10:34

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

검색

게시물 검색