DOMDocument:시 중복되는 요소의 Id
-
03-07-2019 - |
문제
나는 어떤 페이지의 컨텐츠는(실행하고있을 통해 깔끔하지만,필요가 없는 경우 이 문제의 근원)로 DOMDocument
용 DOMDocument::loadHTML
.
그것은 오는 다양한 오류가 있습니다:
ID x 에 이미 정의된 엔티티,라인 X
하는 방법은 없을 만들 중 DOMDocument
(이나 깔끔한)무시하거나 스트립 중복되는 요소의 Id,그래서 그것이 실제로 만들기에 DOMDocument
?
감사합니다.:)
해결책
주제에 대한 빠른 검색에 따르면이 (잘못된) 버그 보고서가 나타납니다.
http://bugs.php.net/bug.php?id=46136
마지막 답변은 다음을 나타냅니다.
XHTML 문서를로드하기 위해 HTML 4 규칙을 사용하고 있습니다. load () 메소드를 사용하여 xml 또는 libxml_use_internal_errors () 함수로 구문 분석하여 경고를 무시하십시오.
HTML 페이지에 대한 참조가 포함되지 않았기 때문에 같은 이유로이 문제를 겪고 있는지 확실하지 않습니다. 어쨌든 사용 libxml_use_internal_errors()
적어도 막다 오류.
ID는 HTML 문서입니다 일반적으로 독특합니다, 그래서 최상의 솔루션 가능하다면 여전히 문서를 검증하고 있습니다.
다른 팁
에 의해 정의 Id 는 고유합니다.그렇지 않은 경우,당신은 클래스를 사용하는 대신(도 이름을,그것이 적용되는 경우).
고 의심할 수 있습 XML 도구를 무시하 Id 중복을 만들 것입니다 그들 손잡이 잘못된 XML 문서입니다.
예외를 사용하여 중복 ID를 처리하고 두 번째 ID의 이름을 바꿉니다. 또는 동일한 부모의 하위 요소의 요소를 ID와 결합 할 수도 있습니다.
ID는 XML 파일에서 고유합니다 (XMLTREE의 ROOTELEMENT)