SimpleXML PHP Tutorial

XML adalah salah satu media yang seringkali digunakan untuk membawa data di dalam web services. Ketika sebuah request dikirimkan dari klien ke sebuah service, kita harus membentuk request message dalam bentuk XML. Begitu juga sebaliknya, ketika sebuah service mengirimkan response ke klien, maka service harus mengubah format pesan response dalam bentuk XML.

Untuk mengolah pesan berbentuk XML dibutuhkan XML parser. PHP memiliki XML parser yaitu SimpleXML dan DOM

Tutorial berikut ini membahas mengenai bagaimana membuat XML serta bagaimana mengolah file XML dengan menggunakan PHP secara sederhana.

SimpleXML

Untuk membuat XML menggunakan SimpleXML silakan ikuti script berikut:

simplexml.php

<?php
$xmlstr = <<<XML
<stis>
    <mahasiswa>
        <nama/>
    </mahasiswa>
</stis>
XML;

$xml = new SimpleXMLElement($xmlstr);

$mahasiswa = $xml->mahasiswa[0];
$mahasiswa->addAttribute('type', 'Komputasi');

$mahasiswa->nama = 'Azuharu';

$jurusan = $xml->mahasiswa[0]->addChild('jurusan');
$jurusan->addChild('kelas', '4KS1');

file_put_contents('mahasiswa.xml', $xml->asXML());
?>

Jika script di atas dijalankan melalui browser, maka akan menghasilkan file mahasiswa.xml. Adapun isi dari mahasiswa.xml adalah sebagai berikut:

<?xml version="1.0"?>
<stis>
    <mahasiswa type="Komputasi">
        <nama>Azuharu</nama>
		<jurusan>
			<kelas>4KS1</kelas>
		</jurusan>
	</mahasiswa>
</stis>

Processing Response

Selanjutnya kita akan mengolah file mahasiswa.xml di atas, sehingga dapat ditampilkan melalui browser.

Berikut ini adalah script untuk melakukan parsing mahasiswa.xml

simpexml_parse.php

<?php
$xml = simplexml_load_file('mahasiswa.xml');
$mahasiswa = $xml->mahasiswa[0];

echo "<p>Nama: ".$mahasiswa->nama."</p><br/>";
echo "<p>Kelas: ".$mahasiswa->jurusan->kelas."</p><br/>";
$attributes = $mahasiswa->attributes();
echo "<p>Peminatan: ".$attributes['type']."</p><br/>";
?>

Selamat mencoba.

 

1 Comment

Leave a Reply

Your email address will not be published. Required fields are marked *