PHP XML DOM

Penghurai DOM terbina dalam membolehkan anda 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 - mentakrifkan set standard objek untuk sebarang dokumen berstruktur

* XML DOM - untuk XML Documents define set standard objek

* HTML DOM - Tentukan set standard objek untuk dokumen HTML


Ketahui lebih lanjut Untuk pengetahuan tentang XML DOM, sila 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 menukar 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 Anggap XML di atas sebagai A struktur pokok:

· Tahap 1: Dokumen XML

· Tahap 2: Elemen akar: <from>

· Tahap 3: Elemen teks: "Jani"


Pemasangan

Fungsi penghurai XML DOM ialah bahagian penting teras PHP. Tiada pemasangan diperlukan untuk menggunakan fungsi ini.


Fail XML

Fail xml_dom.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("xml_dom.xml");
 
 print $xmlDoc->saveXML();
 ?>

Kod di atas akan mengeluarkan:

ToveJaniReminderJangan lupakan saya hujung minggu ini

Jika anda melihat kod sumber dalam tetingkap penyemak imbas, anda akan melihat HTML berikut:

250.png

Contoh di atas mencipta DOMDocument-Object dan memuatkan XML dalam "xml_dom.xml" ke dalam objek dokumen ini.

Fungsi saveXML() meletakkan dokumen XML dalaman ke dalam rentetan supaya kita boleh mengeluarkannya.


Merentasi XML

Kami mahu memulakan penghurai XML, memuatkan XML dan melelang ke atas semua elemen < nota> elemen:

<?php
 $xmlDoc = new DOMDocument();
 $xmlDoc->load("xml_dom.xml");
 
 $x = $xmlDoc->documentElement;
 foreach ($x->childNodes AS $item)
 {
     print $item->nodeName . " = " . $item->nodeValue . "<br>";
 }
 ?>

Kod di atas akan dikeluarkan:

#text =  
kepada = Tove
#teks =  
dari = Jani
#teks =
tajuk = Peringatan
#teks =
body = Jangan lupakan saya hujung minggu ini!
#text =

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 mengenai XML DOM, lawati tutorial XML DOM kami.



Meneruskan pembelajaran
||
<?php $xmlDoc = new DOMDocument(); $xmlDoc->load("xml_dom.xml"); print $xmlDoc->saveXML(); ?>
  • Cadangan kursus
  • Muat turun perisian kursus