AlgoritmaNews Adalah Situs Berita Perkembangan Teknologi Terkini Yang Ter Update Setiap Hari | Mulai Dari Berita Teknoligi, Sains, Perbintangan, NASA, Satelit, Tips Trik Mengatasi Masalah Yang Terjadi Pada Prangkat Teknologi dan Masih Banyak Info Menarik Lainya.
Promo Web Hosting 500mb Bw Unlimited Cuma Rp.50rb Untuk 10 Pendaftar Pertama Order disini

Teknik Sederhana parsing XML dengan PHP dan Jquery

By. AlgoritmaNews - XML ( Extendsible Markup Language) adalah salah satu bahasa yang dibuat untuk dapat melakukan pertukaran data dari suatu aplikasi ke aplikasi lain. Kenapa kita mesti mempelajari XML, karena menurut saya XML banyak sekali digunakan pada berbagai aplikasi salah satunya Android yang sekarang-sekarang ini lagi booming. Android sendiri paling banyak dibuat dengan bantuan XML dan Java. Untuk mempelajari dasar-dasar XML, teman teman bisa baca-baca pada artikel ini :
  • http://www.w3schools.com/xml/
  • http://www.xml.com/pub/a/98/10/guide0.html
  • http://www.w3.org/XML/
XML tidak bisa lepas dari parsing, mengkonversi dari atau ke XML adalah hal yang paling sering dilakukan. Berikut ini saya akan mencoba mencoba mempraktikan bagaimana melakukan parsing XML dengan PHP.
Kalau teman-teman membaca manual PHP, ada banyak class yang memudahkan kita melakukan parsing XML salah satunya adalah SimpleXML.
Awal terlebih dahulu adalah pengecekan apakah class SimpleXML telah tersedia di versi PHP kita atau belum. Karena SimpleXML ini support pada PHP versi 5.
Sekarang coba kita ambil salah satu contoh file xml dari alamat http://www.w3schools.com/xml/yang plant_catalog.xml.
Sekarang kita buat satu file untuk mencoba mengambil data pada file plant_catalog.xml dengan nama xml_php.php (satukan dalam folder file plant_catalog.xml). Pada xml_php.php kita tulis code seperti dibawah ini :
01<?php
02    # pengecekan apakah ada file *.xml itu ?
03    if(file_exists('plant_catalog.xml')){
04 
05        # ambil data xml
06        $xml = file_get_contents('plant_catalog.xml');
07 
08        # pembuatan object SimpleXMLElement
09        $e_xml = new SimpleXMLElement($xml);
10 
11        # mengambil name dari element
12        echo "Element root : " . $e_xml->getName() . "<br />";
13            echo "Element children dari root : " . $e_xml->children()->getName() . "<br />";
14 
15        echo "Element children dari " . $e_xml->children()->getName() . " : <br />";
16        # loping get name dari child yg banyak
17        foreach($e_xml->children()->children() as $child){
18            echo $child->getName()."<br />";
19        }
20 
21        echo "============================================= <br />";
22 
23        # mengambil isi dari element
24        echo "Common : " . $e_xml->PLANT[0]->COMMON . "<br />";
25 
26        echo "Botanical : " . $e_xml->PLANT[0]->BOTANICAL . "<br />";
27 
28        echo "============================================= <br />";
29 
30        # hitung jumlah element pada PLANT
31        $jml_plant = $e_xml->PLANT->count();
32        echo "Jumlah element ". $e_xml->children()->getName() . " : " . $jml_plant . "<br />";
33 
34        # looping untuk mendapatkan data keseluruhan
35        for ($i=0; $i<$jml_plant; $i++){
36 
37            # ambil hanya element COMMON
38            echo "#" . $i . " Common dari " . $e_xml->children()->getName() . " : " . $e_xml->PLANT[$i]->COMMON . "<br />";
39 
40        }
41 
42    }else{
43 
44        echo "file tidak ditemukan";
45 
46    }
47 
48?>
Untuk melihatnya Disini
Tapi maaf karena fungsi count() hanya support pada php versi 5.3 sedangkan hosting saya menggunakan versi PHP 5.2 jadi terdapat error. Lebih jelas, teman-teman bisa langsung coba aja di localhost masing-masing.
Pada kode tersebut, sudah saya berikan komentar sehingga memudahkan teman-teman mempelajarinya.
Selain dengan SimpleXML, kita juga bisa memanfaatkan fasilitas dari jquery.Berikut ini adalah code parsing XML dengan jquery :
01<html>
02<head>
03    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
04    <script type='text/javascript'>
05 
06        $(document).ready(function()
07        {
08 
09            $.ajax({
10                type: "GET",
11                url: "plant_catalog.xml",
12                dataType: "xml",
13                beforeSend: function(){
14                    $("#image").html("<img src='ajax-loader.gif'");
15                },
16                success: function(xml) {
17                    $(xml).find("PLANT").each(function(){
18                        $("#image").hide();
19 
20                        var data_common = $(this).find("COMMON").text();
21                        $("#v_common ul").append("<li>"+ data_common +"</li>");
22 
23                        var data_botanical = $(this).find("BOTANICAL").text();
24                        $("#v_botanical ul").append("<li>"+ data_botanical +"</li>");
25                    });
26 
27                }
28            });
29 
30        });
31 
32    </script>
33</head>
34 
35<body>
36  <span id='image'></span><br />
37  Common :
38  <div id='v_common'>
39    <ul>
40 
41    </ul>
42  </div>
43 
44  Botanical :
45  <div id='v_botanical'>
46    <ul>
47 
48    </ul>
49  </div>
50</body>
51 
52</html>
Demonya bisa dilihat : Disini
Sampai disini semoga ada tambahan ilmu lagi tentang PHP, Jquery n XML


Refrensi

0 Comments:

:)) ;)) ;;) :D ;) :p :(( :) :( :X =(( :-o :-/ :-* :| 8-} :)] ~x( :-t b-( :-L x( =))

Post a Comment

Loading..

Share

Twitter Delicious Facebook Digg Stumbleupon Favorites More