Parsing merupakan suatu teknik untuk mendapatkan data di balik tag-tag program. Dalam hal ini tag yang kita maksudkan adalah tag bahasa xml.
Kalau bahasa simpelnya adalah mengekstrak. Ternyata bukan cuman kulit manggis saja yang bisa di ekstrak. XML juga bisa di ekstrak lo. 😀
Untuk teknik parsing atau mengeluarkan atau mengambil data dari tag xml ini dapat dilakukan melalui file xml yang live online atau file yang offline.
Studi kasus:
Kasus yang pernah Saya lakukan yaitu mengambil data pada sebuah tag xml dari salah satu website. Yang mana data yang akan di ambil yaitu berupa data url.
Cara simpel parsing XML
Sebenarnya untuk memparsing sendiri banyak caranya. Tapi tutorial kali ini kita akan bahas yang simpel supaya mudah digunakan. Kamu cuma perlu panggil fungsi read atau pembaca file xml yang sudah ada di library php, ikuti terus tutorialnya.
#1 XML offline
xml online maksudnya adalah file xmlnya berada di pc atau laptop kamu sendiri. Dan sebagai contoh misalnya nama file xmlnya adalah sitemap.xml:
Contoh isi file xmlnya:
<?xml version=”1.0″ encoding=”UTF-8″?> <urlset xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xsi:schemaLocation=”http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd” xmlns=”http://www.sitemaps.org/schemas/sitemap/0.9″ xmlns:xhtml=”http://www.w3.org/1999/xhtml”> <url> Â <loc>https://tokopedia.com/mr-panerai/led-plafon-superwhite-isi-24</loc>Â Â Â Â <xhtml:link rel=”alternate” media=”only screen and (max-width: 640px)” href=”https://website.com/mr-panerai/led-plafon-superwhite-isi-24″ /> Â <lastmod>2017-05-05T16:59:42+08:00</lastmod> Â <changefreq>hourly</changefreq> Â <priority>0.6</priority> </url> <url> Â <loc>https://tokopedia.com/jeemis/angels-and-demons</loc>Â Â Â Â <xhtml:link rel=”alternate” media=”only screen and (max-width: 640px)” href=”https://website.com/jeemis/angels-and-demons” /> Â <lastmod>2017-05-05T16:59:42+08:00</lastmod> Â <changefreq>hourly</changefreq> Â <priority>0.6</priority> </url></xml>
Maka caranya:
$xml = simplexml_load_file(‘sitemap.xml’);
foreach ($xml->url as $val){echo $val->loc;
}
Dan outputnya:
https://website.com/mr-panerai/led-plafon-superwhite-isi-24
https://website.com/jeemis/angels-and-demons
#2 XML online
Nah, untuk contoh yang kedua ini, xmlnya online berada pada sebuah server. Perubahannya tidak banyak. yang perlu di rubah adalah pembacaan lokasi dari xmlnya itu sendiri. Jika melihat contoh diatas, maka lokasi xml nya berada pada satu direktori dengan script ini.
Dan jika xml nya di server maka yang perlu di rubah adalah:
$xml = simplexml_load_file(‘www.domain.com/sitemap.xml’);
Nah untuk alamat di atas tinggal sesuaikan saja dengan yang kamu kerjakan. Poin penting yang menjadi parsing ini adalah tag yang ada pada xml itu sendiri.
Pada kasus diatas, tag yang saya parsing adalah:
<loc>*</loc>
Untuk tag yang di parsing bisa lebih dari satu jenis parsing, silahkan di coba dan di eksplorasi, semoga bermanfaat. Jika ada yang kurang pahama atau ingin ditanyakan, silahkan berikan komentar di bawah artikel ini. semoga membantu.