ホームページ >バックエンド開発 >PHPチュートリアル >SimpleXML の XPath を使用して名前空間を含む XML を解析するにはどうすればよいですか?

SimpleXML の XPath を使用して名前空間を含む XML を解析するにはどうすればよいですか?

DDD
DDDオリジナル
2024-12-18 16:12:10663ブラウズ

How to Parse XML with Namespaces Using SimpleXML's XPath?

SimpleXML を使用した名前空間による XML の解析

XML 名前空間は、XML ドキュメント内のさまざまな部分を定義するためによく使用されます。 SimpleXML を使用して名前空間を含む XML を解析するには、次のアプローチを検討してください:

名前空間のある XML ドキュメント:

名前空間のある XML ドキュメント:

<root xmlns:event="http://www.webex.com/schemas/2002/06/service/event">
    <event:event>
        <event:sessionKey></event:sessionKey>
        <event:sessionName>Learn QB in Minutes</event:sessionName>
        <event:sessionType>9</event:sessionType>
        <event:hostWebExID></event:hostWebExID>
        <event:startDate>02/12/2009</event:startDate>
        <event:endDate>02/12/2009</event:endDate>
        <event:timeZoneID>11</event:timeZoneID>
        <event:duration>30</event:duration>
        <event:description></event:description>
        <event:status>NOT_INPROGRESS</event:status>
        <event:panelists></event:panelists>
        <event:listStatus>PUBLIC</event:listStatus>
    </event:event>
    ...
</root>

簡略化された解析アプローチ:

名前空間を登録せずにevent:eventノードをループするには、XPathクエリで完全な名前空間プレフィックスを使用できます:

$xml = new SimpleXMLElement($xmlString);

foreach ($xml->xpath('//event:event') as $event) {
    var_export($event->xpath('event:sessionKey'));
}

以上がSimpleXML の XPath を使用して名前空間を含む XML を解析するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。