PHP SimpleXML

Apakah itu PHP SimpleXML?

SimpleXML ialah ciri baharu dalam PHP 5.

Pelanjutan SimpleXML menyediakan cara mudah untuk mendapatkan nama dan teks elemen XML.

Berbanding dengan penghurai DOM atau Expat, SimpleXML boleh membaca data teks daripada elemen XML dalam hanya beberapa baris kod.

Simplexml boleh menukar dokumen XML (atau rentetan XML) kepada objek, seperti:

· Elemen ditukar kepada atribut tunggal objek Simplexmlement. Apabila terdapat berbilang elemen pada tahap yang sama, ia diletakkan dalam tatasusunan.

· Atribut diakses menggunakan tatasusunan bersekutu, di mana indeks sepadan dengan nama atribut.

· Teks di dalam elemen ditukar kepada rentetan. Jika elemen mempunyai berbilang nod teks, ia disusun mengikut tertib di mana ia ditemui.

SimpleXML sangat pantas digunakan apabila melakukan tugas asas seperti:

·  Baca/ekstrak data daripada fail/rentetan XML

·  Mengedit nod teks atau Atribut

Walau bagaimanapun, apabila berurusan dengan XML lanjutan, seperti ruang nama, adalah lebih baik untuk menggunakan penghurai Expat atau XML DOM.


Pemasangan

Bermula dengan PHP 5, fungsi SimpleXML adalah sebahagian daripada teras PHP. Tiada pemasangan diperlukan untuk menggunakan fungsi ini.


Contoh PHP SimpleXML

Andaikan kita mempunyai fail XML berikut, "note.xml":

<?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>

Sekarang kita mahu output Maklumat berbeza fail XML di atas:

Contoh 1

Output kekunci dan elemen pembolehubah $xml (iaitu objek SimpleXMLElement):

<?php
 $xml=simplexml_load_file("note.xml");
 print_r($xml);
 ?>

Kod di atas akan mengeluarkan:

SimpleXMLElement Object ( [ke] => Tove [dari] => Jani [heading] => Peringatan [body] => Jangan lupakan saya hujung minggu ini! )

Contoh 2

Output data setiap elemen dalam fail XML:

<?php
 $xml=simplexml_load_file("note.xml");
 echo $xml->to . "<br>";
 echo $xml->from . "<br>";
 echo $xml->heading . "<br>";
 echo $xml->body;
 ?>

Kod di atas akan mengeluarkan:

Tove

Jani
Peringatan
Jangan lupa saya hujung minggu ini!

Contoh 3

Keluarkan nama elemen dan data setiap nod anak:

<?php
 $xml=simplexml_load_file("note.xml");
 echo $xml->getName() . "<br>";
 
 foreach($xml->children() as $child)
 {
 echo $child->getName() . ": " . $child . "<br>";
 }
 ?>


Kod di atas akan mengeluarkan:

nota

kepada: Tove
daripada: Jani
tajuk: Peringatan
badan : Jangan lupakan saya pada hujung minggu ini!

Meneruskan pembelajaran
||
<?php $xml=simplexml_load_file("note.xml"); echo $xml->to . "<br>"; echo $xml->from . "<br>"; echo $xml->heading . "<br>"; echo $xml->body; ?>
  • Cadangan kursus
  • Muat turun perisian kursus