PHP XML DOM
Penghurai DOM terbina dalam membolehkan untuk memproses dokumen XML dalam PHP.
Apakah itu DOM?
W3C DOM menyediakan set standard objek untuk dokumen HTML dan XML, serta antara muka standard untuk mengakses dan memanipulasi dokumen ini.
W3C DOM dibahagikan kepada bahagian yang berbeza (Teras, XML dan HTML) dan tahap yang berbeza (DOM Tahap 1/2/3):
* Teras DOM - untuk sebarang dokumen berstruktur Mentakrifkan standard set objek
* XML DOM - Mentakrifkan set standard objek untuk dokumen XML
* HTML DOM - Mentakrifkan set standard objek untuk dokumen HTML
Untuk mengetahui lebih lanjut tentang pengetahuan XML DOM, lawati tutorial XML DOM kami.
Penghuraian XML
Untuk membaca dan mengemas kini - mencipta dan memproses - dokumen XML, anda memerlukan penghurai XML.
Terdapat dua jenis asas penghurai XML:
Penghurai berasaskan pokok: Penghurai ini menukarkan dokumen XML kepada struktur pepohon. Ia menganalisis keseluruhan dokumen dan menyediakan akses kepada elemen dalam pepohon, seperti Model Objek Dokumen (DOM).
Penghurai berasaskan masa: Mengurus dokumen XML sebagai urutan peristiwa. Apabila peristiwa tertentu berlaku, penghurai memanggil fungsi untuk mengendalikannya.
Penghurai DOM ialah penghurai berasaskan pokok.
Sila lihat serpihan dokumen XML berikut:
<?xml version="1.0" encoding="ISO-8859-1"?>
<from> ;Jani</from>
XML DOM merawat XML di atas sebagai struktur pokok:
Tahap 1: Dokumen XML
Tahap 2: Elemen akar : < ;dari>
Tahap 3: Elemen teks: "Jani"
Pasang
Fungsi penghurai XML DOM Ia adalah sebahagian daripada teras PHP. Tiada pemasangan diperlukan untuk menggunakan fungsi ini.
Fail XML
Fail XML berikut akan digunakan dalam contoh kami:
<?xml version= " 1.0" encoding="ISO-8859-1"?>
<note>
<to>Tove</to>
<from>Jani</from>
< heading>Peringatan</heading>
<body>Jangan lupakan saya hujung minggu ini!</body>
</note>
Memuatkan dan mengeluarkan XML
Kita perlu memulakan penghurai XML, memuatkan XML dan mengeluarkannya:
Contoh
<?php $xmlDoc = new DOMDocument(); $xmlDoc->load("note.xml"); print $xmlDoc->saveXML(); ?>
Kod di atas akan keluar:
ToveJaniReminder Jangan lupakan saya hujung minggu ini!
Jika anda melihat kod sumber dalam tetingkap penyemak imbas, anda akan melihat HTML berikut:
<?xml version="1.0" encoding="ISO-8859-1"?> <note> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body> </note>
Contoh di atas mencipta Objek-DOMDocument dan memuatkan XML dalam "note.xml" dalam objek dokumen ini .
Fungsi saveXML() meletakkan dokumen XML dalaman ke dalam rentetan supaya kita boleh mengeluarkannya.
Melintasi XML
Kami mahu memulakan penghurai XML, memuatkan XML dan melelang ke atas semua elemen elemen <nota> :
Instance
<?php $xmlDoc = new DOMDocument(); $xmlDoc->load("note.xml"); $x = $xmlDoc->documentElement; foreach ($x->childNodes AS $item) { print $item->nodeName . " = " . $item->nodeValue . "<br>"; } ?>
Kod di atas akan mengeluarkan:
#text =
to = Tove
#text =
dari = Jani
#teks =
tajuk = Peringatan
#teks =
badan = Jangan lupa saya hujung minggu ini!
#teks =
di atas Dalam contoh , anda melihat nod teks kosong antara setiap elemen.
Apabila XML dijana, ia selalunya akan mengandungi ruang kosong antara nod. Penghurai DOM XML menganggapnya sebagai elemen biasa, yang kadangkala boleh menyebabkan masalah jika anda tidak memberi perhatian kepadanya.
Untuk mengetahui lebih lanjut tentang XML DOM, lawati tutorial XML DOM kami.