개발자 Q&A

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

2025.07.12 16:59

XMLWriter::endDtdElement 관련 질문입니다.

목록
  • 게임개발자 8일 전 2025.07.12 16:59
  • 92
    1
제가 XMLWriter::endDtdElement 메서드를 사용하여 DTD 요소를 종료할 때, 다음과 같은 오류를 발생시키는 코드를 작성했습니다.

php

$xmlWriter = new XMLWriter();

$xmlWriter->openURI('php://output');

$xmlWriter->startDocument('1.0', 'UTF-8');

$xmlWriter->startDTD('myDTD', null, 'myDTD.dtd');

$xmlWriter->endDTD();

$xmlWriter->endDtdElement('myDTD');

$xmlWriter->endDocument();

$xmlWriter->flush();



이 코드를 실행하면 "Warning: XMLWriter::endDtdElement(): DTD element 'myDTD' not started" 경고 메시지가 발생합니다.

XMLWriter::endDtdElement() 메서드를 사용하여 DTD 요소를 종료하는 방법을 알려주세요.

    댓글목록

    profile_image
    나우호스팅  8일 전



    XMLWriter::endDtdElement() 메서드를 사용하여 DTD 요소를 종료하는 방법은 다음과 같습니다.

    - XMLWriter::endDtdElement() 메서드는 DTD 요소를 종료하기 전에 startDTD() 메서드를 호출하여 DTD 요소를 시작해야 합니다.
    - startDTD() 메서드에 두 번째 인자로 null 대신 DTD 요소 이름을 전달해야 합니다.

    수정된 코드는 다음과 같습니다.

    #hostingforum.kr
    php
    
    $xmlWriter = new XMLWriter();
    
    $xmlWriter->openURI('php://output');
    
    $xmlWriter->startDocument('1.0', 'UTF-8');
    
    $xmlWriter->startDTD('myDTD', 'myDTD', 'myDTD.dtd');
    
    $xmlWriter->endDTD();
    
    $xmlWriter->endDtdElement('myDTD');
    
    $xmlWriter->endDocument();
    
    $xmlWriter->flush();
    
    


    이 코드를 실행하면 경고 메시지가 발생하지 않습니다.

    2025-07-12 17:00

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

검색

게시물 검색