Sal
Administrator
Seorang penulis yang suka belajar hal baru dan dunia fotografi
2 min read

SimpleXML PHP Tutorial

Posted in Web Services

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.