1
일부 XML 텍스트를 구문 분석하는 PHP 페이지가 있습니다. 이 텍스트는 html 텍스트 필드의 사용자 입력에서옵니다.PHP DomDocument xml 파서
노드 사이에 공백이있을 때마다 Domdocument xml 파서가 문서를 올바르게 구문 분석하지 못합니다. 기본적으로 첫 번째 노드를 인식하지만 찾을 수없는 중첩 노드는 인식합니다.
공백을 제거해도 문제가 없습니다.
$xmldoc = new DOMDocument();
$xmldoc->loadXML($rawxml);
$top = $xmldoc->documentElement;
if(!$top) {echo "error: xml config is empty"; exit(-1);}
if($top->nodeName != "config") die("error: expect config tag as first element");
$nameNode = $top->childNodes->item(0);
//Fails here
if($nameNode->nodeName != "name") die("error: expect name tag following config tag");
작품
<config><name>sdf2</name></config>
이것은 예상되는 동작
<config> <name>sdf2</name></config>
를 참조 $ rawxml); – user623879
@ user623879 잘못되었습니다. http://stackoverflow.com/questions/3577641/best-methods-to-parse-html-with-php을 읽어보십시오. –