Last Updated on August 26, 2022 by
Halo pembaca setia blog codekey.id! Melanjutkan kembali tutorial PHP, kali ini kami akan membahas tentang JavaScript Object Notation atau JSON. JSON adalah format pemrograman yang berfungsi untuk membangun web. Namun dengan struktur yang lebih sederhana serta lebih mudah dipahami dibandingkan XML.
Setelah sebelumnya mempelajari XML, maka akan lebih mudah bagi Anda untuk belahar JSON PHP ini. XML dan JSON adalah bahasa yang cukup mirip, secara umum keduanya didesign untuk menyimpan, membaca, serta bertukar informasi berupa teks sehingga mudah dibaca baik oleh pengguna maupun mesin.
Oleh karena itu, baik XML maupun JSON dijadikan sebagai standar pemrograman web. Anda juga dapat mengetahui perbedaan XML dan JSON di artikel berikut https://www.dicoding.com/blog/apa-itu-json/
Saat ini JSON lebih banyak digunakan karena dapat mengambil informasi spesifik dari server kemudian membuatnya muncul di situs web. Bahasa pemrograman web satu ini pada dasarnya menggunakan JavaScript, sehingga jika Anda memiliki pengetahuan dasar tentang bahasa Java, akan sangat membantu dalam mempelajari JSON.
Berbeda dengan XML, JSON adalah bahasa pemrograman yang tidak support nametags dan comments, namun telah support untuk array PHP. JavaScript Object Natation ini juga lebih ringan dan mudah dipahami. Pada tutorial kali ini kami akan menunjukkan banyak contoh dan memberikan contoh penerapan JSON yang paling basic, fungsi ini disebut dengan PHP json_decode() dan json_encode().
Berikut konten yang akan kita bahas kali ini:
- PHP json_decode() dan json_encode(): Tips Utama
- Belajar Melakukan Encode pada Files
- Bagaimana Mengkonversikan Array
- Membuat Request ke Database
- Pengulangan Result
- Penggunaan Metode POST
- PHP json_decode() dan json_decode(): Rangkuman
Table of Contents
PHP json_decode() dan json_encode(): Tips Utama
Beberapa hal utama yang harus Anda perhatikan dan ingat dalam belajar JSON PHP ialah sebagai berikut:
- JSON merupakan sebuah data anonim yang dapat diterjemahkan ke dalam variabel PHP
- Array dapat dikonversikan ke dalam format JSON
- JSON umumnya digunakan sebagai pembaca data dari server web dan dapat menampikannya di situs web.
- Terdapat fungsi yang terintegrasi untuk memanipulasi JSON, fungsi yang paling penting pada JSON adalah PHP json_decode() dan json_encode().
Belajar Melakukan Encode pada Files
Pertama, untuk menggunakan JSON Anda harus tahu bagaimana mengubah objek PHP menjadi JSON. Untuk mengubah objek PHP ini, Anda da[at menggunakan fungsi json_decode().
Untuk melakukan konversi berlawanan Anda dapat menggunakan PHP json_decode(0, yang akan kita bahas dibagian berikutnya. Untuk contoh awal, Anda dapat memperhatikan contoh kode berikut:
<?php $siswaObj->name = "Andi"; $siswaObj->email = "andi@example.com"; $siswaObj->age = 17; $siswaJSON = json_encode($siswaObj); echo $siswaJSON; ?>
Klien pada JavaScript
JavaScript ini menggunakan AJAX untuk mendapatkan file PHP seperti contoh di bawah ini:
var xmlhttp = new XMLHttpRequest(); xmlhttp.onreadystatechange = function(){ if (this.readyState == 4 && this.status == 200) { var newObj = JSON.parse(this.responseText); document.getElementById("JSON").innerHTML = newObj.name; }}; xmlhttp.open("GET", "demo.php", true); xmlhttp.send();
Bagaimana Mengkonversikan Array
Sama seperti perlakukan pada objek, array juga didefinisikan ke dalam JSON menggunakan fungsi PHP json_decode(). Caranya ialah seperti pada contoh coding berikut:
<?php $siswaArr = array("Andi", "Budi", "Toni", "Doni"); $siswaJSON = json_encode($siswaArr); echo $siswaJSON; ?>
Klien pada JavaScript
Hal yang harus Anda ketahui juga dalam belajar JSON PHP ini ialah bagaimana mengeluarkan file PHP pada array. Dalam hal ini, JavaScript juga menggunakan AJAX untuk mengeluarkan file PHP. Contohnya ialah sebagai berikut:
var xmlhttp = new XMLHttpRequest(); xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { var newObj = JSON.parse(this.responseText); document.getElementById("JSON").innerHTML = newObj[2]; } }; xmlhttp.open("GET", "demo_array.php", true); xmlhttp.send();
Membuat Request ke Database
Sebagai bahasa pemrograman, PHP JSON berada pada sisi server. Ini berarti Anda hanya dapat menggunakannya untuk tugas-tugas yang dijalankan oleh server. Menghubungkan ke database bisa menjadi salah satu tugas yang sesuai.
Bayangkan kita memiliki database yang menyimpan informasi tertentu. Untuk memintanya, kita perlu memanggil database tersebut. Contoh cara untuk memanggilnya ialah sebagai berikut:
<!DOCTYPE html> <html> <body> <h2>JSON data from PHP file.</h2> <p>The JSON received from the PHP file:</p> <p id="example"></p> <script> var obj, dbParameters, xmlhttp; obj = { "table":"siswa", "limit":5 }; dbParam = JSON.stringify(obj); xmlhttp = new XMLHttpRequest(); xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { document.getElementById("example").innerHTML = this.responseText; } }; xmlhttp.open("GET", "your_file.php?x=" + dbParam, true); xmlhttp.send(); </script> </body> </html>
Pada pengkodean di atas didapati beberapa ketentuan. Pertama, kami mendeskripsikan objek yang mengacu pada tabel properti dan limit, kemudian menerjemahkannya ke PHP JSON. Berikutnya dilakukan panggilan yang mengacu pada parameter JSON dikirim ke file PHP. Saat panggilan dikembalikan atau mendapat respon, kami mengeluarkan apa yang kami telah terima dari file.
Setelah itu akan didapatkan file PHP seperti contoh berikut:
<?php header("Content-Type: application/json; charset=UTF-8"); $obj = json_decode($_GET["x"], false); $connect = new mysqli("RequiredServer", "RequiredUsername", "RequiredPassword", "Northwind"); $result = $connect->query("SELECT name FROM ".$obj->table." LIMIT ".$obj->limit); $output = array(); $output = $result->fetch_all(MYSQLI_ASSOC); echo json_encode($output); ?>
Jika Anda sedikit bingung memahami skrip di atas, berikut penjelasannya secara ringkas:
- Panggilan diterjemahkan ke objek dengan menggunakan PHP json_decode().
- Koneksi ke database dibuat untuk menulis data ke dalam array.
- Array kemudian dilampirkan ke dalam objek, yang kemudian dikembalikan dalam format JSON menggunakan PHP json_encode().
Pengulangan Hasil atau Result
Data yang telah ada di dalam file yang berisi kode PHP dapat diubah menjadi array pada JavaScript. Untuk melakukannya, Anda dapat menggunakan fungsi PHP for Loop. Caranya ialah sebagai berikut:
... xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { newObj = JSON.parse(this.responseText); for (x in newObj) { txt += newObj[x].name + "<br>"; } document.getElementById("JSON").innerHTML = txt; } }; ...
Penggunaan Metode POST
Kapan pun Anda perlu mengirim informasi tertentu ke server, Anda dapat menggunakan fungsi atau metode POST. Metode ini POST HTTP pada JSON adalah pilihan yang sepertinya merupakan pilihan terbaik.
Untuk menggunakannya panggilan AJAX, jangan lupa untuk menentukan metode dan header yang tepat. Data yang perlu kita kirim ke server akan menjadi argumen untuk fungsi send(). Contoh penerapannya ialah sebagai berikut:
obj = { "table":"siswa", "limit":10 }; dbParam = JSON.stringify(obj); xmlhttp = new XMLHttpRequest(); xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { newObj = JSON.parse(this.responseText); for (x in newObj) { txt += newObj[x].name + "<br>"; } document.getElementById("JSON").innerHTML = txt; } }; xmlhttp.open("POST", "JSON.php", true); xmlhttp.setRequestHeader("Content-type", "application/learn-encoded"); xmlhttp.send("x=" + dbParam);
Jika Anda sedang membuat projek pada file PHP, Anda dapat menggunakan cara yang sama. Namun metodenya saja yang berbeda. Berikut contoh penggunaannya pada file PHP:
<?php header("Content-Type: application/json; charset=UTF-8"); $obj = json_decode($_POST["x"], false); $conn = new mysqli("myServer", "myUser", "myPassword", "Northwind"); $result = $conn->query("SELECT name FROM ".$obj->table." LIMIT ".$obj->limit); $outp = array(); $outp = $result->fetch_all(MYSQLI_ASSOC); echo json_encode($outp); ?>
PHP json_decode() dan json_decode(): Rangkuman
Dari berbagai hal yang telah kita pelajari di atas, dapat ditarik kesimpulan sebagai berikut:
- JSON adalah format berbasis teks standar, serupa tetapi lebih ringan daripada XML. Format bahasa satu ini menyimpan data anonim yang dapat diuraikan menjadi variabel.
- JSON sering digunakan untuk membaca data server dan menampilkannya di halaman web.
- JSON dapat ditangani dengan menggunakan fungsi PHP bawaan. Misalnya, objek PHP dapat diubah menjadi file berformat JSON menggunakan json_encode()fungsi PHP. Untuk transformasi sebaliknya, gunakan PHP json_decode().
- Array PHP tidak didukung oleh XML tetapi dapat diubah menjadi JSON.
Itulah tadi berbagai hal dasar yang harus Anda ketahui dalam belajar JSON PHP. Jika Anda sedang dalam rencana membuat sebuah aplikasi, maka bahasa pemrograman JSON adalah pilihan yang kami rekomendasikan untuk Anda. Sampai jumpa di artikel menarik lainnya!
Jasa Pembuatan Aplikasi, Website dan Internet Marketing | PT APPKEY
PT APPKEY adalah perusahaan IT yang khusus membuat aplikasi Android, iOS dan mengembangkan sistem website. Kami juga memiliki pengetahuan dan wawasan dalam menjalankan pemasaran online sehingga diharapkan dapat membantu menyelesaikan permasalahan Anda.