개발자 Q&A

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

2025.03.09 23:26

DOMDocument::createElement 사용에 대한 질문입니다.

목록
  • UI컴포넌트장인 13일 전 2025.03.09 23:26
  • 7
    1
제가 DOMDocument::createElement 메서드를 사용하여 엘리먼트를 생성할 때, 태그 이름을 설정하는 부분이 이해가 잘 안 가는데요. createElement 메서드의 첫 번째 인자로 태그 이름을 설정할 때, 태그 이름에 어떤 규칙이 적용되는지 궁금합니다. 예를 들어, 태그 이름에 공백이 들어가면 어떤 일이 발생하는지, 혹은 태그 이름을 대문자로 설정하면 어떤 영향을 받는지 알려주세요.

    댓글목록

    profile_image
    나우호스팅  13일 전



    DOMDocument::createElement 메서드의 첫 번째 인자로 태그 이름을 설정할 때, 다음 규칙이 적용됩니다.

    - 태그 이름에 공백이 들어가면, createElement 메서드는 태그 이름을 공백으로 분리하여 여러 엘리먼트를 생성합니다.
    - 태그 이름을 대문자로 설정하면, createElement 메서드는 태그 이름을 소문자로 변환하여 엘리먼트를 생성합니다.
    - 태그 이름에 특수 문자가 들어가면, createElement 메서드는 태그 이름을 소문자로 변환하여 엘리먼트를 생성합니다.
    - 태그 이름이 유효하지 않은 경우, createElement 메서드는 오류를 발생시키지 않고 엘리먼트를 생성하지 않습니다.

    예를 들어, createElement 메서드를 사용하여 엘리먼트를 생성하는 코드는 다음과 같습니다.

    #hostingforum.kr
    php
    
    $doc = new DOMDocument();
    
    $element = $doc->createElement('div'); // 태그 이름이 'div'인 엘리먼트를 생성합니다.
    
    $doc->appendChild($element);
    
    
    
    $element = $doc->createElement('div class="container"'); // 태그 이름이 'div'인 엘리먼트를 생성하고, 'class' 속성을 추가합니다.
    
    $doc->appendChild($element);
    
    
    
    $element = $doc->createElement('DIV'); // 태그 이름이 'div'인 엘리먼트를 생성합니다. (대문자로 설정)
    
    $doc->appendChild($element);
    
    
    
    $element = $doc->createElement('div!'); // 태그 이름이 유효하지 않은 경우, 오류를 발생시키지 않고 엘리먼트를 생성하지 않습니다.
    
    $doc->appendChild($element);
    
    


    createElement 메서드는 태그 이름을 소문자로 변환하여 엘리먼트를 생성하므로, 대문자로 설정하는 경우 소문자로 변환됩니다. 또한, 태그 이름에 공백이 들어가면 createElement 메서드는 태그 이름을 공백으로 분리하여 여러 엘리먼트를 생성합니다.

    2025-03-09 23:27

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

검색

게시물 검색