tutorial pengembangan web terbaru
 

PHP SimpleXML Parser


SimpleXML adalah ekstensi PHP yang memungkinkan kita untuk dengan mudah memanipulasi dan mendapatkan data XML.


The SimpleXML Parser

SimpleXML adalah parser berbasis pohon.

SimpleXML menyediakan cara mudah untuk mendapatkan nama sebuah elemen, atribut dan konten tekstual jika Anda tahu struktur dokumen XML atau tata letak.

SimpleXML ternyata dokumen XML menjadi struktur data yang Anda dapat iterate melalui seperti koleksi array dan objek.

Dibandingkan dengan DOM atau parser Expat, SimpleXML membutuhkan lebih sedikit baris kode untuk membaca data teks dari elemen.


Instalasi

Pada PHP 5, fungsi SimpleXML adalah bagian dari inti PHP. Tidak diperlukan instalasi untuk menggunakan fungsi-fungsi ini.


PHP SimpleXML - Baca Dari String

PHP simplexml_load_string() adalah fungsi yang digunakan untuk membaca data XML dari string.

Anggaplah kita memiliki variabel yang berisi data XML, seperti ini:

$myXMLData =
"<?xml version='1.0' encoding='UTF-8'?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>";

Contoh di bawah ini menunjukkan bagaimana menggunakan simplexml_load_string() fungsi untuk membaca data XML dari string:

Contoh

<?php
$myXMLData =
"<?xml version='1.0' encoding='UTF-8'?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>";

$xml=simplexml_load_string($myXMLData) or die("Error: Cannot create object");
print_r($xml);
?>
Menjalankan contoh »

Output dari kode di atas akan menjadi:

SimpleXMLElement Object ( [to] => Tove [from] => Jani [heading] => Reminder [body] => Don't forget me this weekend! )

Kesalahan Tip Penanganan: Gunakan fungsi libxml untuk mengambil semua kesalahan XML ketika loading dokumen dan kemudian iterate atas kesalahan. Contoh berikut mencoba untuk memuat string XML yang rusak:

Contoh

<?php
libxml_use_internal_errors(true);
$myXMLData =
"<?xml version='1.0' encoding='UTF-8'?>
<document>
<user>John Doe</wronguser>
<email>[email protected]</wrongemail>
</document>";

$xml = simplexml_load_string($myXMLData);
if ($xml === false) {
    echo "Failed loading XML: ";
    foreach(libxml_get_errors() as $error) {
        echo "<br>" , $error->message;
    }
} else {
    print_r($xml);
}
?>
Menjalankan contoh »

Output dari kode di atas akan menjadi:

Failed loading XML:
Opening and ending tag mismatch: user line 3 and wronguser
Opening and ending tag mismatch: email line 4 and wrongemail

PHP SimpleXML - Baca From File

PHP simplexml_load_file() adalah fungsi yang digunakan untuk membaca data XML dari file.

Asumsikan kita memiliki file XML yang disebut " note.xml ", yang terlihat seperti ini:

<?xml version="1.0" encoding="UTF-8"?>
<note>
  <to>Tove</to>
  <from>Jani</from>
  <heading>Reminder</heading>
  <body>Don't forget me this weekend!</body>
</note>

Contoh di bawah ini menunjukkan bagaimana menggunakan simplexml_load_file() fungsi untuk membaca data XML dari file:

Contoh

<?php
$xml=simplexml_load_file("note.xml") or die("Error: Cannot create object");
print_r($xml);
?>
Menjalankan contoh »

Output dari kode di atas akan menjadi:

SimpleXMLElement Object ( [to] => Tove [from] => Jani [heading] => Reminder [body] => Don't forget me this weekend! )

Tip: Bab berikutnya menunjukkan bagaimana untuk mendapatkan / mengambil nilai simpul dari file XML dengan SimpleXML!


Lebih PHP SimpleXML

Untuk informasi lebih lanjut tentang fungsi PHP SimpleXML, kunjungi PHP SimpleXML Referensi.