Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Saya Boleh Mengakses Elemen Awalan Ruang Nama dalam XML Mudah?

Bagaimanakah Saya Boleh Mengakses Elemen Awalan Ruang Nama dalam XML Mudah?

Patricia Arquette
Patricia Arquetteasal
2024-12-08 01:35:12794semak imbas

How Can I Easily Access Namespace-Prefixed Elements in Simple XML?

Menavigasi Nod Berawalan Ruang Nama dalam XML Mudah

Untuk mengakses elemen yang mengandungi ruang nama awalan seperti media:thumbnail atau flickr:profile dalam Suapan RSS, XML Mudah menyediakan kaedah yang memintas keperluan untuk DOM yang kompleks manipulasi.

Menggunakan kanak-kanak() untuk Mengakses Elemen Ruang Nama

Kaedah children() mengambil URI ruang nama sebagai hujahnya dan mengembalikan iterator yang menghasilkan objek yang mewakili elemen dalam ruang nama yang ditentukan. Contohnya:

$feed = simplexml_load_file('http://www.sitepoint.com/recent.rdf');
foreach ($feed->item as $item) {
    $ns_dc = $item->children('http://purl.org/dc/elements/1.1/');
    echo $ns_dc->date;
}

Dalam coretan ini, $ns_dc menjadi lelaran ke atas elemen anak bagi setiap item yang dimiliki oleh ruang nama http://purl.org/dc/elements/1.1/. Ini membolehkan anda mengakses elemen tarikh dalam ruang nama DC.

Menggunakan Penyelesaian Ini pada Suapan Flickr Anda

Untuk mendapatkan lakaran kecil bagi setiap item dalam suapan RSS Flickr anda , anda boleh menggunakan kod berikut:

$feed = simplexml_load_file('http://example.com/flickr.rss');
foreach ($feed->item as $item) {
    $ns_media = $item->children('http://search.yahoo.com/mrss/');
    echo $ns_media->thumbnail->attributes()->url;
}

Ini akan mengeluarkan URL lakaran kecil untuk setiap item dalam suapan.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengakses Elemen Awalan Ruang Nama dalam XML Mudah?. 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