Share

Array adalah tipe data yang kompleks, Anda tidak dapat melihat isinya secara langsung. Jika Anda mencoba mencetak nilai dari sebuah array, Anda akan melihat PHP hanya mengeluarkan “Array”, yang berarti bahwa Anda diharuskan lagi untuk mem-parsing nilai-nilai di dalamnya.

Kebanyakan data yang kita simpan dalam table di database adalah data tunggal yang sesuai dengan nama field di database. Tapi bagaimana cara menyimpan data array dalam 1 field? PHP menyediakan fungsi tersebut yaitu: serialize dan unserialize.

Serialize berfungsi untuk mengambil objek dan mengubahnya menjadi representasi string yang berisi nama kelas dan propertinya. Saat objek di-serialize, konten ditempatkan dengan beberapa jenis specifier diikuti oleh titik dua, lalu diikuti dengan data aktual yang diikuti oleh titik koma.

Unserialize mengambil string atau string serial yang diperoleh dari objek dan mengkonversikannya lagi ke objek. Merupakan kebalikan dari serialize.

Pada tutorial ini, kita akan menyimpan data berisi alamat URL, IP address dan waktu mengakses halaman. Untuk itu buat table tb_data, nama databasenya : db_belajar.

Kemudian buat file serialize.php untuk menyimpan data array pada database.

Ketika kita melihat data yang tersimpan di table tb_data, maka akan terlihat seperti ini pada field session_data :

a:3:{s:3:”url”;s:14:”/serialize.php”;s:2:”ip”;s:13:”192.168.0.100″;s:5:”waktu”;s:19:”2017-07-30 08:36:25″;}

Kemudian bagaimana cara menampilkan data tersebut? Tentunya kalau kita langsung menampilkan data untuk session_data maka akan muncul seperti di atas. Untuk mengembalikannya menjadi array buat file unserialize.php seperti di bawah ini :

Cukup mudah bukan 🙂