알고 있습니다. 유효한 XML이 아닙니다.여러 루트 노드가있는 경우 libxml의 모든 내용을 구문 분석합니다.
불행히도 libxml을 사용하는 PHP 소스 코드의 버그를 해결할 부분입니다.
PHP loadHTML 함수는 경고가없고 실수로 오류 플래그를 덮어 씁니다. 따라서이 옵션을 전달하면 절대 libxml로 넘어 가지 않습니다.
PHP의 loadXML은 이 아니며도 실수 없습니다. 모든 플래그가 예상대로 작동합니다. 그래서 지금은 loadXML을 대신 사용하려고합니다. 불행히도 loadXML은 단일 루트 노드 이후 파싱을 중지하기 때문에 템플릿 스 니펫이나 위젯을로드하는 데 적합하지 않습니다. 그래서 뭔가가 ....
<!--My title snippet -->
<h1>${{ title }}</h1>
<h4>${{ subtitle }}</h4>
은 부분적으로 loadXML과 함께로드됩니다. libxml의 파서가 계속 진행하도록하는 옵션 플래그가 있습니까?또는 모든 조각이 루트 노드에 래핑되도록 요구해야합니까?
나는 버그를 해결 얻기의 다른 방법을 살펴 보았다
참고. 예를 들어, LIBXML_USE_INTERNAL_ERRORS (true)를 사용하거나 출력 버퍼를 사용하여 경고를 캐치 및 지움으로써. 두 가지 모두 작동하지만 두 가지 모두 경고와 오류를 내가 원하지 않는 메모리에 기록하기 때문에 만족스럽지 않습니다.
'libxml_use_internal_errors'의 문제점은 무엇입니까? 'libxml_clear_errors'로 경고와 에러를 지울 수 있습니다. – nwellnhof