Penghuraikan Expat XML PHP
Penghuraikan Expat terbina dalam memungkinkan untuk memproses dokumen XML dalam PHP .
Apakah itu XML?
XML digunakan untuk menerangkan data, dengan tumpuan diberikan pada data itu. Fail XML menerangkan struktur data.
Dalam XML, tiada teg pratakrif. Anda mesti menentukan tag anda sendiri.
Untuk mengetahui lebih lanjut tentang XML, lawati tutorial XML kami.
Apakah itu Expat?
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 acara: Anggap dokumen XML sebagai satu siri acara. Apabila peristiwa tertentu berlaku, penghurai memanggil fungsi untuk mengendalikannya.
Penghuraikan Expat ialah penghurai berasaskan peristiwa.
Penghurai berasaskan acara memfokuskan pada kandungan dokumen XML, bukannya strukturnya. Oleh sebab itu, penghurai berasaskan peristiwa dapat mengakses data lebih cepat daripada penghurai berasaskan pepohon.
Lihat serpihan XML berikut:
<from>Jani</from>
Penghuraikan berasaskan peristiwa melaporkan XML di atas sebagai satu siri tiga peristiwa :
· Elemen permulaan: dari
· Memulakan bahagian CDATA, nilai: Jani
· Elemen penutup: daripada
Contoh XML di atas mengandungi bentuk Baik XML. Walau bagaimanapun, tika ini adalah XML tidak sah kerana tiada pengisytiharan jenis dokumen (DTD) dikaitkan dengannya.
Walau bagaimanapun, ini tiada perbezaan apabila menggunakan penghurai Expat. Expat ialah penghurai yang tidak menyemak kesahihan dan mengabaikan sebarang DTD.
Sebagai penghurai XML berasaskan peristiwa dan tidak disahkan, Expat adalah pantas dan ringan, menjadikannya sesuai untuk aplikasi web PHP.
Nota: Dokumen XML mesti dibentuk dengan baik, jika tidak Expat akan menjana ralat.
Pemasangan
Fungsi penghurai XML Expat ialah bahagian penting 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>
Memulakan penghurai XML
Kami akan memulakan penghurai XML dalam PHP, mentakrifkan pengendali untuk acara XML yang berbeza, dan kemudian menghuraikan fail XML.
Instance
<?php //Initialize the XML parser $parser=xml_parser_create(); //Function to use at the start of an element function start($parser,$element_name,$element_attrs) { switch($element_name) { case "NOTE": echo "-- Note --<br>"; break; case "TO": echo "To: "; break; case "FROM": echo "From: "; break; case "HEADING": echo "Heading: "; break; case "BODY": echo "Message: "; } } //Function to use at the end of an element function stop($parser,$element_name) { echo "<br>"; } //Function to use when finding character data function char($parser,$data) { echo $data; } //Specify element handler xml_set_element_handler($parser,"start","stop"); //Specify data handler xml_set_character_data_handler($parser,"char"); //Open XML file $fp=fopen("test.xml","r"); //Read data while ($data=fread($fp,4096)) { xml_parse($parser,$data,feof($fp)) or die (sprintf("XML Error: %s at line %d", xml_error_string(xml_get_error_code($parser)), xml_get_current_line_number($parser))); } //Free the XML parser xml_parser_free($parser); ?>
Kod di atas akan mengeluarkan:
-- Nota --
Kepada: Tove
Daripada: Jani
Tajuk: Peringatan
Mesej: Jangan lupakan saya hujung minggu ini!
Prinsip kerja:
1 Mulakan penghurai XML melalui fungsi xml_parser_create()
2 pengendali acara yang berbeza Fungsi
3. Menambah fungsi xml_set_element_handler () untuk menentukan fungsi yang dilaksanakan apabila penghurai menemui teg mula dan akhir Gunakan dengan menggunakan menggunakan menggunakan menggunakan ke Fungsi yang manakah dilaksanakan apabila data aksara ditemui
5. Gunakan fungsi xml_parse() untuk menghuraikan fail "test.xml"
6. Jika berlaku ralat, tambahkan fungsi xml_error_string() untuk menghuraikan Ralat XML ditukar. ke dalam huraian teks
7. Panggil fungsi xml_parser_free() untuk melepaskan memori yang diperuntukkan kepada fungsi xml_parser_create()
Pengenalan kepada PHP XML Parser Fungsi XML membolehkan anda menghuraikan dokumen XML tetapi tidak mengesahkannya.
XML ialah format data yang digunakan untuk pertukaran dokumen berstruktur standard. Anda boleh mendapatkan lebih banyak maklumat tentang XML dalam php.cn kami.
Pelanjutan ini menggunakan penghurai Expat XML.
Expat ialah penghurai berasaskan peristiwa yang menganggap dokumen XML sebagai satu siri acara. Apabila peristiwa berlaku, ia memanggil fungsi tertentu untuk mengendalikannya.
Expat ialah penghurai tanpa pengesahan yang mengabaikan sebarang DTD yang dipautkan kepada dokumen. Walau bagaimanapun, jika dokumen itu tidak dalam bentuk yang baik, ia akan berakhir dengan mesej ralat.
Oleh kerana ia adalah penghurai berasaskan acara, bebas pengesahan, Expat adalah pantas dan sesuai untuk aplikasi web.
Fungsi penghurai XML membolehkan anda mencipta penghurai XML dan mentakrifkan pengendali untuk acara XML.
Pemasangan
Fungsi XML Parser ialah bahagian penting teras PHP. Tiada pemasangan diperlukan untuk menggunakan fungsi ini.
Fungsi Penghurai XML PHP
PHP: Menunjukkan versi PHP terawal yang menyokong fungsi ini.
Pemalar Penghurai XML PHP