Tutorial PHP XML: Buat, Parse, Baca dengan Contoh

Isi kandungan:

Anonim

Apa itu XML?

XML adalah singkatan dari Extensible Markup Language.

XML digunakan untuk menyusun, menyimpan dan mengangkut data dari satu sistem ke sistem yang lain.

XML serupa dengan HTML.

Ia menggunakan tag pembuka dan penutup.

Tidak seperti HTML, XML membolehkan pengguna menentukan tag mereka sendiri.

Dalam tutorial ini, anda akan belajar-

  • Apa itu DOM?
  • Penyusun XML
  • Mengapa menggunakan XML?
  • Contoh Dokumen XML
  • Cara Membaca XML menggunakan PHP
  • Cara Membuat dokumen XML menggunakan PHP

Apa itu DOM?

DOM adalah singkatan Model Dokumen Objek.

Ini adalah platform lintas bahasa dan standard bahasa yang menentukan cara mengakses dan memanipulasi data dalam;

  • HTML
  • XHTML
  • XML

DOM XML digunakan untuk mengakses dan memanipulasi dokumen XML. Ia melihat dokumen XML sebagai struktur pokok.

Penyusun XML

Pengurai XML adalah program yang menerjemahkan dokumen XML ke dalam Objek Model Dokumen XML (DOM) Objek.

Objek XML DOM kemudiannya dapat dimanipulasi menggunakan JavaScript, Python, dan PHP dll.

Kata kunci CDATA yang merupakan singkatan dari (Unparsed) Character Data digunakan untuk mengabaikan watak khas seperti "<,>" ketika menguraikan dokumen XML.

Mengapa menggunakan XML?

  • Perkhidmatan web seperti SOAP dan REST menggunakan format XML untuk bertukar maklumat. Mempelajari apa itu XML dan cara kerjanya akan memberi anda kelebihan daya saing sebagai pembangun kerana aplikasi moden menggunakan perkhidmatan web dengan banyak.
  • Dokumen XML dapat digunakan untuk menyimpan pengaturan konfigurasi aplikasi
  • Ini membolehkan anda membuat tag khas anda sendiri yang menjadikannya lebih fleksibel.

Contoh Dokumen XML

Anggaplah anda mengembangkan aplikasi yang mendapat data dari perkhidmatan web dalam format XML.

Berikut adalah contoh bagaimana bentuk dokumen XML.

Joe Paul
CEOTasha Smith
Finance Manager

DI SINI,

  • "" Menentukan versi xml yang akan digunakan dan pengekodan
  • "" adalah elemen akar.
  • … ” adalah elemen pentadbiran dan penjualan anak.

Cara Membaca XML menggunakan PHP

Sekarang mari kita tulis kod yang akan membaca dokumen XML pekerja dan memaparkan hasilnya dalam penyemak imbas web. Indeks.php


Employees Listing

';$list = $xml->record;for ($i = 0; $i < count($list); $i++) {echo 'Man no: ' . $list[$i]->attributes()->man_no . '
';echo 'Name: ' . $list[$i]->name . '
';echo 'Position: ' . $list[$i]->position . '

';}?>

DI SINI,

  • "$ Xml = simplexml_load_file ('karyawan.xml');" menggunakan fungsi simplexml_load_file untuk memuatkan nama fail karyawan.xml dan menetapkan kandungannya kepada pemboleh ubah array $ xml.
  • "$ List = $ xml-> rakam;" mendapat kandungan nod rekod.
  • “For ($ i = 0; $ i
  • "$ List [$ i] -> atribut () -> man_no;" membaca atribut man_no elemen
  • "$ List [$ i] -> nama;" membaca nilai unsur nama anak
  • "$ List [$ i] -> kedudukan;" membaca nilai elemen anak kedudukan

Menguji aplikasi kami

Dengan andaian anda menyimpan file index.php dalam folder phptus / xml, layari URL http: //localhost/phptuts/xml/index.php

Cara Membuat dokumen XML menggunakan PHP

Kami sekarang akan melihat bagaimana membuat dokumen XML menggunakan PHP.

Kami akan menggunakan contoh di atas dalam rajah pokok DOM.

Kod berikut menggunakan PHP yang dibina dalam kelas DOMDocument untuk membuat dokumen XML.

encoding = 'utf-8';$dom->xmlVersion = '1.0';$dom->formatOutput = true;$xml_file_name = 'movies_list.xml';$root = $dom->createElement('Movies');$movie_node = $dom->createElement('movie');$attr_movie_id = new DOMAttr('movie_id', '5467');$movie_node->setAttributeNode($attr_movie_id);$child_node_title = $dom->createElement('Title', 'The Campaign');$movie_node->appendChild($child_node_title);$child_node_year = $dom->createElement('Year', 2012);$movie_node->appendChild($child_node_year);$child_node_genre = $dom->createElement('Genre', 'The Campaign');$movie_node->appendChild($child_node_genre);$child_node_ratings = $dom->createElement('Ratings', 6.2);$movie_node->appendChild($child_node_ratings);$root->appendChild($movie_node);$dom->appendChild($root);$dom->save($xml_file_name);echo "$xml_file_name has been successfully created";?>

DI SINI,

  • "$ Dom = Dokumen DOM baru ();" membuat contoh kelas DOMDocument.
  • "$ Dom-> encoding = 'utf-8';" menetapkan pengekodan dokumen ke utf-8
  • "$ Dom-> xmlVersion = '1.0';" menentukan nombor versi 1.0
  • "$ Dom-> formatOutput = true;" memastikan bahawa output diformat dengan baik
  • "$ Root = $ dom-> createElement ('Filem');" mencipta nod akar bernama Filem
  • "$ Attr_movie_id = DOMAttr baru ('movie_id', '5467');" mentakrifkan atribut id filem dari filem Movies
  • “$ Child_node_element_name = $ dom-> createElement ('ElementName', 'ElementValue')" membuat simpul anak dari nod Filem. ElementName menentukan nama elemen contohnya Tajuk. ElementValue menetapkan nilai simpul anak contohnya The Campaign.
  • "$ Root-> appendChild ($ movie_node);" menambahkan elemen movie_node ke Filem nod akar
  • "$ Dom-> appendChild ($ root);" menambahkan simpul akar ke dokumen XML.
  • "$ Dom-> simpan ($ xml_file_name);" menyimpan fail XML di direktori root pelayan web.
  • "Echo ''. $ xml_file_nama. ' berjaya dibuat'; " membuat pautan ke fail XML.

Menguji aplikasi kami

Dengan andaian anda menyimpan fail create_movies_list dalam folder phptuts / xml, layari URL http: //localhost/phptuts/xml/create_movies_list.php

Klik pada pautan movie_list_xml

Ringkasan

  • XML adalah singkatan dari Extensible Markup Language
  • XML boleh digunakan untuk pertukaran maklumat antara sistem atau tetapan konfigurasi kedai aplikasi dll.
  • DOM adalah singkatan Model Dokumen Objek. XML DOM melihat dokumen XML sebagai struktur pokok
  • XML Parser adalah program yang menterjemahkan dokumen XML dan XML menjadi struktur pokok DOM seperti dokumen.
  • CDATA digunakan untuk mengabaikan watak khas ketika menguraikan dokumen XML.
  • PHP menggunakan simplexml_load_file untuk membaca dokumen XML dan mengembalikan hasilnya sebagai susunan angka
  • Kelas Dokumen PHP DOM untuk membuat fail XML.