PHP XML DOM
PHP XML DOM
Penghurai DOM terbina dalam memungkinkan 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 untuk dokumen XML
* XML DOM - Mentakrifkan set standard objek untuk dokumen XML
* HTML DOM - Mentakrifkan set standard objek untuk dokumen HTML
Untuk mengetahui lebih lanjut tentang XML DOM pengetahuan, 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: Anggap dokumen XML sebagai satu siri acara. 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 Menganggap XML di atas sebagai struktur pokok:
· Tahap 1: Dokumen XML
· Tahap 2: Elemen akar: <from> ;
· Tahap 3: Elemen teks: "Jani"
Pemasangan
Fungsi penghurai XML DOM ialah bahagian penting dalam 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>Reminder</heading> <body>Don't forget me this weekend!</body> </note>
Memuatkan dan mengeluarkan XML
Kita perlu memulakan penghurai XML, memuatkan XML dan mengeluarkannya:
Instance
<?php $xmlDoc = new DOMDocument(); $xmlDoc->load("note.xml"); print $xmlDoc->saveXML(); ?>
Kod di atas akan mengeluarkan:
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 meletakkan "nota. xml" dimuatkan ke 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> :
Contoh
<?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 =
from = Jani
#teks =
tajuk = Peringatan
#teks =
badan = Jangan lupa saya hujung minggu ini!
#teks =
Dalam contoh di atas, anda melihat bahawa terdapat 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.