Home > Rekomendasi > Menyimpan Array Dalam Database, Pilih Json_encode atau Serialize?

.

Tidak ada komentar BYAdmin Ilmuwebsite

Bagi seorang web developer yang menggunakan PHP sebagai senjata utama dalam bekerja sehari-hari, selalu ada saja problem yang harus dicari solusinya. Mulai dari algoritma, teknik, hingga tools yang digunakan. Banyak kondisi dimana pencarian solusi itu didapatkan tidak melalui searching browsing, namun dengan memecahkan sendiri. Kemungkinan memang kala itu belum ada yang menemui masalahnya, sehingga otomatis tidak ada solusi. Sehingga solusi harus dipecahkan sendiri, Sudah jelas kerepotan betul, karena berhubung dengan waktu dan tentunya kemampuan.

Jelas sekali banyak kendala berprogramming ria yang tidak terdokumentasikan, karena tiap-tiap developer dipastikan menemui kasus-kasus khusus, sehingga pencarian solusinya juga betul-betul khusus, hanya untuk project tersebut. Beruntung jika solusinya di publish secara online oleh programmer-programmer sebelumnya yang tergabung dalam stackoverflow misalnya, namun malapetaka jika tidak ada solusi, sedangkan waktu project deadline sebentar lagi.

Bagaimana mengatasinya? Mohon maaf yang satu ini tidak bisa saya berikan solusi. Hehe… Tapi paling tidak kali ini saya akan coba menshare pengalaman dalam menghandle project, lebih kepada teknis koding mengkoding. Ada kondisi dimana, atribut dari sesuatu, anggaplah misalkan kita akan memposting sebuah item, misalnya sebuah pegawai, dari pada harus membuat field-field baru di tablenya setiap ada atribut baru, lebih baik dibuat saja field atribut kemudian atributnya nanti berupa array yang kemudian arraynya di masukkan ke dalam field atribut.

Lebih jelasnya seperti ini misalnya …

Anggaplah ada sebuah tabel_pegawai misalnya, berisi field-field seperti :
id_pegawai, nama, kota, provinsi, golongan darah

menyimpan array dalam database

Apabila kita misalkan ingin menambahkan atribut seperti alamat, hobi, nama orang tua, kemudian prestasi seabreg-abreg dari sekolah dasar, dll yang mana tidak diperlukan adanya pengkategorisasian, lebih baik di masukkan saja ke dalam satu field berupa array. Maksud pengkategorisasian adalah seperti ini, ketika si Bos ingin mencari pegawainya yang berasal dari kota bogor, atau golongan darah, provinsi, nah itu kategorisasi pencarian, dan sangat tidak mungkin mencari pegawai berdasarkan nama orang tua, atau prestasi dari sekolah dasar, sehingga layaknya yang seperti itu sih di masukkan ke dalam array, lalu dimasukkan saja ke dalam field atribut.

Sederhananya yang umum ditemui adalah seperti ini,

menyimpan array dalam database

namun dari pada seperti itu lebih baik di beginikan saja …

menyimpan array dalam database

Bagiamana cara menyimpan array ke dalam fieldnya … ?

Ada dua cara dalam melakukannya, apabila Anda melihat struktur table milik wordpress, terlihat bahwa wordpress cenderung lebih sering menggunakan serialize ketimbang menggunakan json_encode. Namun kita akan kupas lebih efisien dan lebih optimal, sehingga lebih pantas digunakan yang mana nantinya.

Bilamana Menggunakan Serialize

Untuk menggunakan serialize Anda tinggal menyiapkan saja arraynya, kemudian lakukan serialize. Dan simpan dalam field database. Cara menyimpan ke dalam database sama dengan string biasa. Saya akan berikan contoh seperti ini …

Fasilitas serialize ini bisa digunakan pada PHP versi 4.0.0 ke atas, serialize sangat cocok digunakan untuk menyimpan array yang tidak terlalu kecil, menurut survey rata-rata yang dilakukan oleh procurios.nl, serialize bekerja maksimal ketika menyimpan data kurang dari 300kb, diatas itu sangat lambat sekali proses load arraynya.

Bilamana Menggunakan JSON_Encode

Fasilitas json_encode bisa ditemui pada php 5.0.0 keatas. JSON_Encode sangat baik sekali digunakan untuk menyimpan data yang lumayan besar diatas 70mb, dan sangat stabil sekali proses load arraynya.

 

Dalam menggunakan json_encode Anda cukup menyiapkan arraynya lalu eksekusi json_encode dan simpan dalam database, untuk mengeluarkannya cukup gunakan json_decode dan secara otomatis arraynya sudah bisa di akses kembali nantinya …

Lengkapnya Anda bisa cek di sini http://techblog.procurios.nl/k/news/view/34972/14863/cache-a-large-array-json-serialize-or-var_export.html

 

Semoga bermanfaat …

Loka Dwiartara
Ilmuwebsite.com

DVD Video Tutorial : Kursus Web Development Komplit Bangun 5 Project Aplikasi Website - Membuat CMS Sendiri Dari Nol, Blog, Portal Berita, Ecommerce, Web Komunitas dengan CodeIgniter 3 JQuery AJAX Bootstrap

Video Tutorial Kursus Web Development Komplit Bangun 5 Project Website ini merupakan ‘penunjuk arah’ agar Anda yang sedang maupun baru akan terjun ke dalam dunia web development yang lebih mendalam memiliki peta perjalanan pembelajaran yang lebih terarah menuju web developer professional. (Disertai pembelajaran dasar HTML CSS, JQuery, PHP & MySQL, CodeIgniter) Dibuat oleh praktisi yang memiliki pengalaman lebih dari 10 tahun di bidang web development (Pemesanan bisa SMS/WA ke 0838 1157 5876, atau bisa pesan secara online di sini)



Leave a Reply

Be the First to Comment!

Notify of
wpDiscuz
eXTReMe Tracker