SimpleXML에서 사용자 정의 네임스페이스 처리
질문:
사용자 정의가 있는 XML 문서에서 네임스페이스가 있는 경우 SimpleXML 구문 분석이 해당 네임스페이스의 요소를 노출하지 못합니다. 이 문제를 어떻게 해결할 수 있습니까?
답변:
SimpleXML을 사용하여 사용자 정의 네임스페이스 요소에 액세스하려면 네임스페이스 접두사를 등록하고 사용해야 합니다. 이는 일반적으로 재귀적 일치를 활성화하기 위해 첫 번째 인수로 네임스페이스 접두사를 사용하고 두 번째 인수로 true를 사용하는 children() 함수를 사용하여 수행됩니다.
<code class="php">$rss = simplexml_load_string( '<?xml version="1.0" encoding="utf-8"?> <rss version="2.0" xmlns:moshtix="http://www.moshtix.com.au"> <channel> <link>qweqwe</link> <moshtix:genre>asdasd</moshtix:genre> </channel> </rss>' ); foreach ($rss->channel as $channel) { echo 'link: ', $channel->link, "\n"; echo 'genre: ', $channel->children('moshtix', true)->genre, "\n"; }</code>
이 결과는 다음과 같습니다.
link: qweqwe genre: asdasd
네임스페이스 접두사를 등록하면 사용자 정의 네임스페이스 요소에 액세스하고 children()을 사용하여 해당 값을 검색하는 것이 가능해집니다.
위 내용은 SimpleXML을 사용하여 사용자 정의 네임스페이스의 요소에 액세스하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!