Lanjutan dari artikel mengenai JSON sebelumnya. Pada kesempatan ini saya akan menulis artikel bagaimana cara mengkonversi data dari database MySQL menjadi JSON dan bagaimana cara membaca JSON tentunya dengan PHP.
Seperti kita ketahui, JSON telah menjadi format pertukaran data yang sangat populer pada beberapa tahun belakangan ini. Bahkan lebih disukai daripada format XML, karena kesederhanaannya. Menggunakan format JSON akan mendapatkan beberapa keuntungan, antara lain : ringan, kemampuan untuk menyimpan struktur data yang kompleks, serta bisa dengan mudah kita baca.
Membuat Database Dan Input Data
Buat database terlebih dahulu, atau menggunakan database yang sudah ada. ย Misalnya saya menggunakan database db_belajar. Kemudian buat table dengan perintah SQL:
1 2 3 4 5 6 7 8 |
CREATE TABLE IF NOT EXISTS `tb_anggota` ( `anggota_id` int(5) NOT NULL AUTO_INCREMENT, `nama` varchar(50) NOT NULL, `email` varchar(50) NOT NULL, `alamat` varchar(50) NOT NULL, `umur` int(2) NOT NULL, PRIMARY KEY (`anggota_id`) ) ENGINE=INNODB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1; |
Masukkan beberapa record :
1 2 3 4 5 6 |
INSERT INTO `tb_anggota` (`nama`, `email`, `alamat`, `umur`) VALUES ('Wayan', 'wayan@email.com', 'Badung', 21), ('Made', 'made@email.com', 'Gianyar', 19), ('Nyoman', 'nyoman@email.com', 'Klungkung', 30), ('Ketut', 'ketut@email.com', 'Tabanan', 23), ('Gede', 'gede@email.com', 'Karangasem', 27); |
Konversi Data Menjadi JSON
Buat file php untuk mengkonversi data dari database menjadi JSON. Misalnya konversi.php
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
<?php header("Content-type:application/json"); //koneksi ke database $connection = mysqli_connect("localhost", "root", "", "db_belajar") or die("Error " . mysqli_error($connection)); //menampilkan data dari database, table tb_anggota $sql = "select * from tb_anggota"; $result = mysqli_query($connection, $sql) or die("Error " . mysqli_error($connection)); //membuat array while ($row = mysqli_fetch_assoc($result)) { $ArrAnggota[] = $row; } echo json_encode($ArrAnggota, JSON_PRETTY_PRINT); //tutup koneksi ke database mysqli_close($connection); ?> |
json_encode : fungsi untuk mengkonversikan array menjadi format JSON.
JSON_PRETTY_PRINT : mencetak JSON supaya lebih mudah dibaca.
Parsing JSON Dengan PHP
Kemudian bagaimana cara membaca data JSON dengan menggunakan PHP, misalnya file untuk memparsing JSON adalah parsing.php.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
<?php // membuka file JSON $file = file_get_contents("http://www.belajar.local/konversi.php"); $json = json_decode($file, true); foreach ($json as $key) { if (is_array($key)) { foreach ($key as $key => $value) { echo $key . ' : ' . $value . '<br />'; } } } ?> |
Atau, kita pun bisa langsung memanggil value dalam JSON dengan menggunakan key dari array. Misalnya seperti di bawah ini :
1 2 3 4 5 6 7 8 9 |
<?php // membuka file JSON $file = file_get_contents("http://www.belajar.local/konversi.php"); $json = json_decode($file, true); echo 'Nama Anggota ke-1 : ' . $json['0']['nama'] . '<br />'; echo 'Nama Anggota ke-3 : ' . $json['2']['nama']; ?> |
file_get_contents() : Membaca file dan kemudian dikonversi menjadi string.
json_decode() : fungsi untuk men-decode format JSON.
Cukup mudah bukan?
Semoga bermanfaat ๐
Klik di sini untuk tutorial PHP lainnya.
Keren ini, tutorial paling simpel dan mudah hehe. terimakasih pak, sangat membantu dan kodenya jalan
terima kasih telah berkunjung ๐
terima kasih. sangat membantu ๐
terima kasih sudah berkunjung gan ๐
selamat pagi
Backlink Gan http://memehits.com
terimakasih gan. sangat mudah difahami
mantap gan. simple tapi padat berisi. makasih gan.
om tutorial konversi sql ke json di laravel ada nggak??
tinggal di pecah aja script yang di atas, db masukin ke model dan fungsi konversi json di controller
mantap gan, kalau baca data json yang memuat parameter, gmn ya gan?
maksudnya gimana ya gan? dari endpointnya ditambahkan parameter?