Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana Menghuraikan XML dengan Ruang Nama Menggunakan XPath SimpleXML?

Bagaimana Menghuraikan XML dengan Ruang Nama Menggunakan XPath SimpleXML?

DDD
DDDasal
2024-12-18 16:12:10678semak imbas

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

Menghuraikan XML dengan Ruang Nama Menggunakan SimpleXML

Ruang nama XML biasanya digunakan untuk mentakrifkan bahagian berbeza dalam dokumen XML. Untuk menghuraikan XML dengan ruang nama menggunakan SimpleXML, pertimbangkan pendekatan berikut:

Dokumen XML dengan Ruang Nama:

Diberikan dokumen XML dengan ruang nama:

<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>

Pendekatan Penghuraian Ringkas:

Kepada gelung melalui acara:nod acara tanpa mendaftarkan ruang nama, anda boleh menggunakan awalan ruang nama penuh dalam pertanyaan XPath:

$xml = new SimpleXMLElement($xmlString);

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

Atas ialah kandungan terperinci Bagaimana Menghuraikan XML dengan Ruang Nama Menggunakan XPath SimpleXML?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn