Parsing XML dari BMKG : Info gempa terkini.


SamidCorner(Tegal) – Pembaca yang budiman. Gara-gara gempa yang sempet menggoyang akhirnya saya follow BMKG di twitter dan sekarang sering-sering maen ke bmkg.go.id untuk dapet info tentang gempa ataupun cuaca di situ. Nah, kemudian muncul ide gimana caranya kita meng-capture info gempa terkini dari BMKG lewat xml yang sudah disediakan sama BMKG. Berikut adalah tutorial mengenai membuat info gempa terkini langsung dari sumbernya alias BMKG.

Pada dasarnya BMKG telah menyediakan info terupdate yang diupload melalui file xml, anda dapat lihat di alamat berikut : http://data.bmkg.go.id disitu banyak sekali yang bisa kita buat mulai dari cuaca, peringatan gempa dll. Tapi berhubung kemaren baru merasakan goyangan gempa maka saya akan membuat tutorial bagaimana membuat info tersebut lewa XML dan PHP. Yang kita perlukan adalah file ini http://data.bmkg.go.id/autogempa.xml. Nah, disitu akan muncul info yang bisa kita dapet :

Selanjutnya kita akan memulai untuk mem-parsing parameter yang ada pada file tersebut. Berikut adalah script-nya :

<Infogempa>
<gempa>
<Tanggal>27-Jan-14</Tanggal>
<Jam>23:14:02 WIB</Jam>
<point>
<coordinates>109.26,-8.16</coordinates>
</point>
<Lintang>8.16 S</Lintang>
<Bujur>109.26 E</Bujur>
<Magnitude>5.3 Richter Scale</Magnitude>
<Kedalaman>33 Km</Kedalaman>
<_symbol>imagesSWF/m2b.swf</_symbol>
<Wilayah1>68 km SouthWest KEBUMEN-JATENG</Wilayah1>
<Wilayah2>80 km SouthEast BANYUMAS-JATENG</Wilayah2>
<Wilayah3>91 km SouthEast CILACAP-JATENG</Wilayah3>
<Wilayah4>121 km SouthWest YOGYAKARTA-DIY</Wilayah4>
<Wilayah5>353 km SouthEast JAKARTA-INDONESIA</Wilayah5>
<Potensi>does not generate TSUNAMI</Potensi>
</gempa>
</Infogempa>

Selanjutnya kita akan memulai untuk mem-parsing parameter yang ada pada file tersebut. Berikut adalah script-nya :


<?php
 $url = "http://data.bmkg.go.id/autogempa.xml";
 $sUrl = file_get_contents($url, False);
 $xml = simplexml_load_string($sUrl);

?>
 <table border="1" cellpadding="4" cellspacing="0" style="border-collapse:collapse;" width="500">
 <tr>
 <th colspan="3">Data Gempa Terakhir</th>
 </tr>
 <tr>
 <td>Tanggal / Jam</td>
 <td>:</td>
 <td><?php echo $xml->gempa->Tanggal;?> / <?php echo $xml->gempa->Jam;?></td>
 </tr>
<tr>
 <td>Lintang</td>
 <td>:</td>
 <td><?php echo $xml->gempa->Lintang;?></td>
 </tr>
<tr>
 <td>Bujur</td>
 <td>:</td>
 <td><?php echo $xml->gempa->Bujur;?></td>
 </tr>
<tr>
 <td>Magnitude</td>
 <td>:</td>
 <td><?php echo $xml->gempa->Magnitude;?></td>
 </tr>
<tr>
 <td>Data Wilayah</td>
 <td>:</td>
 <td><ul>
 <li><?php echo $xml->gempa->Wilayah1;?></li>
 <li><?php echo $xml->gempa->Wilayah2;?></li>
 <li><?php echo $xml->gempa->Wilayah3;?></li>
 <li><?php echo $xml->gempa->Wilayah4;?></li>
 <li><?php echo $xml->gempa->Wilayah5;?></li>
 </ul></td>
 </tr>
<tr>
 <td>Keterangan</td>
 <td>:</td>
 <td><?php echo $xml->gempa->Potensi;?></td>
 </tr>

</table>

Nah, kalo berhasil maka akan muncul seperti gambar dibawah ini :

Hasil Parsing XML
Hasil Parsing XML

Penjelasan Script

Coba kita lihat lagi script di atas, command yang paling penting untuk melakukan parsing adalah simplexml_load_string(); lalu apa sebernarnya fungsi itu?

simplexml_load_string mempunyai fungsi sebagai interpreter file xml menjadi string. Ya, dalam contoh tersebut kita “mencomot” beberapa tag dari xml yang kemudian diubah menjadi string guna ditampilkan di browser. Dan yang dicomot adalah beberapa tag yang ada pada file xml tersebut.

Oke, demikian cara membuat Info Gempa terkini yang bersumber langsung dari BMKG dengan menggunakan xml parsing. Semoga bermanfaat.

ASOLOLE JOSSSSSSS!!!!!!!!!

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s