SimpleXML을 사용하여 네임스페이스로 XML을 구문 분석하는 방법
문제:
구문 분석을 시도할 때 SimpleXML을 사용하는 네임스페이스가 있는 XML, RegisterXPathNamespace() 관련 문제 발생 method.
XML 구조:
<root xmlns:event="http://www.webex.com/schemas/2002/06/service/event"> <event:event> <event:sessionKey>...</event:sessionKey> ... </event:event> ... </root>
Xpath 쿼리 예:
'event:sessionKey' 추출 시도 가치 사용:
$xml->registerXPathNamespace('e', 'http://www.webex.com/schemas/2002/06/service/event'); $event->xpath('//e:sessionKey')
해결책:
문제는 XPath 쿼리에서 네임스페이스 접두사('e')와 전체 네임스페이스 URI가 모두 필요하다는 것입니다. , RegisterXPathNamespace()를 사용하지 않고도 가능합니다.
수정됨 코드:
$xml = new SimpleXMLElement($r); foreach ($xml->xpath('//event:event') as $event) { var_export($event->xpath('event:sessionKey')); }
위 내용은 SimpleXML의 XPath를 사용하여 네임스페이스 XML을 올바르게 구문 분석하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!