Cara Menggunakan JSON Di PHP


Cara Menggunakan JSON Di PHP

kamarin saya sudah membahas cara menggunakan JSON pada javascript sekarang saya akan bahas cara menggunakan JSON pada PHP, JSON selain bisa di baca dalam javascript, JSON juga bisa di baca dengan PHP, hanya kita harus merubah format JSON tersebut ke dalam bentuk Array atau Array Object, untuk dapat menggunakan format JSON di PHP kita tidak perlu menambahkan modul ataupun plugin karena PHP sudah mendukung format JSON dengan menggunakan fungsi dari json_encode dan json_decode.
Fungsi dari json_encode sendiri yaitu merubah bentuk Array menjadi JSON sedangkan kalau json_decode adalah kebalikan dari json_encode yaitu merubah format JSON ke bentuk Array, coba lihat contoh di bawah ini
<!DOCTYPE html>
<html>
<head>
<title>BELAJAR JSON</title>
</head>
<body>
<?php
 // bentuk Array
 $array = array('id'=>1, 'nama'=>'Mochamad Rohmat');
 print_r($array);
 // makan akan menghasilkan : Array ( [id] => 1 [nama] => Mochamad Rohmat )

 // bentuk JSON dari variable $array
 $json = json_encode($array);
 echo $json;
 // maka akan menghasilkan : {"id":1,"nama":"Mochamad Rohmat"}

 // jika format JSON mau di rubah lagi ke format Array maka menggunakan fungsi dari json_decode
 $array = json_decode($json);
 print_r($array);
 // maka akan menghasilkan : stdClass Object ( [id] => 1 [nama] => Mochamad Rohmat )
?>
</body>
</html>
contoh json diatas yaitu contoh dari JSON Object karena hanya memiliki 1 data, lalu bagaimana cara membaca format JSON di PHP, perhatikan kode dibawah
<!DOCTYPE html>
<html>
<head>
<title>BELAJAR JSON</title>
</head>
<body>
<?php
 // ketika dalam bentuk array
 $array = array('id'=>1, 'nama'=>'Mochamad Rohmat');
 echo $array['nama'];
 // maka akan menghasilkan : Mochamad Rohmat karena kita mencetak array dari key nama

 // convert Array ke format JSON
 $json = json_encode($array);

 // jika anda ingin membaca format JSON di PHP maka JSON harus di convert ke Array Object dengan menggunakan json_decode
 $array = json_decode($json);
 echo $array->nama;
 // maka akan menghasilkan : Mochamad Rohmat
?>
</body>
</html>
kalau tadi kita membaca format JSON Object agar bisa dibaca di PHP, bagaimana dengan JSON Array, perhatikan kode dibawah, disini saya menggunakan data dari database untuk membuat JSON Array.
<!DOCTYPE html>
<html>
<head>
<title>BELAJAR JSON</title>
</head>
<body>
<?php
 // membuat koneksi ke database
 $host = 'localhost';
 $user = 'root';
 $pass = '';
 $db = 'belajar_json_php';

 $conn = mysql_connect($host, $user, $pass);
 mysql_select_db($db, $conn);

 // menampilkan data dari database
 $sql = 'SELECT * FROM users';
 $rs = mysql_query($sql);

 $i = 0;
 while($row = mysql_fetch_array($rs)){
  $datas[$i]['id'] = $row['id'];
  $datas[$i]['nama'] = $row['nama'];
  $datas[$i]['alamat'] = $row['alamat'];

  $i++;
 }

 // jika anda cetak dengan print_r($datas) makan akan menghasilkan array seperti ini
 echo 'Ini hasil dari array : ';
 print_r($datas);
 echo '<hr />';
 // Array ( [0] => Array ( [id] => 1 [nama] => Rohmat [alamat] => Jln. Pantura ciasem tengah ) [1] => Array ( [id] => 2 [nama] => Mimin [alamat] => Jlan. Krajan timur ) [2] => Array ( [id] => 3 [nama] => Maman [alamat] => Jlan. Krajan barat ) [3] => Array ( [id] => 4 [nama] => Roni [alamat] => Jlan. Mekar sari indah ) ) 

 // jika datas di rubah menjadi format JSON dengan menggunakan json_decode makan akah menghasilkan JSON Array seperti ini
 $json = json_encode($datas);
 echo 'Ini hasil dari JSON Array : ';
 echo $json;
 echo '<hr />';
 // [{"id":"1","nama":"Rohmat","alamat":"Jln. Pantura ciasem tengah"},{"id":"2","nama":"Mimin","alamat":"Jlan. Krajan timur"},{"id":"3","nama":"Maman","alamat":"Jlan. Krajan barat"},{"id":"4","nama":"Roni","alamat":"Jlan. Mekar sari indah "}] 

 // seperti yang sudah saya contohkan di atas untuk membaca format JSON di PHP anda harus merubahnya kembali ke Array dengan menggunakan json_decode
 echo 'Ini hasil dari Array Object : ';
 $json = json_decode($json);
 print_r($json);
 echo '<hr />';

 // meloop data Array Object
 foreach($json as $data){
  echo 'ID : '.$data->id;
  echo 'NAMA : '.$data->nama;
  echo 'ALAMAT : '.$data->alamat;
  echo '<hr />';
 }
 // jika anda buka di browser maka akan menghasilkan
 // ID : 1
 // NAMA : Rohmat
 // ALAMAT : Jln. Pantura ciasem tengah
 // ...... dan seterusnya
?>
</body>
</html>
OK sampai disini dulu pembahasan mengenai JSON di PHP, selamat mencoba dan semoga bisa bermanfaat

Berbagi Via

Share Facebook Share Twitter Share Google+ Share Pinterest
Jangan lupa tinggalkan komentarnya ya :)

3 comments: