SimpleXML XML 오류 처리

문서를 로드할 때 XML 오류를 처리하는 것은 매우 간단한 작업입니다. libxml 기능을 사용하면 문서를 로드할 때 모든 XML 오류를 억제한 다음 오류를 반복할 수 있습니다.

libxml_get_errors()에 의해 반환된 libXMLError 객체에는 오류의 메시지, (위치)을 비롯한 여러 속성이 포함되어 있습니다.

예제 #1 깨진 XML 문자열 로드

                  
<?php
libxml_use_internal_errors(true);
$sxe = simplexml_load_string("<?xml version='1.0'><broken><xml></broken>");
if ($sxe === false) {
    echo "Failed loading XML\n";
    foreach(libxml_get_errors() as $error) {
        echo "\t", $error->message;
    }
}
?>
                  
                

위의 예는 다음을 출력합니다.

Failed loading XML
    Blank needed here
    parsing XML declaration: '?>' expected
    Opening and ending tag mismatch: xml line 1 and broken
    Premature end of data in tag broken line 1
                

기타