PHP serialize() ve unserialize() Fonksiyonları

PHP’de hiç kompleks bir değişkeni veritabanında ya da dosyalarda saklamak istediniz mi? Örneğin tipi array olan bir değişkeni veritabanında saklamak istiyoruz. İşte bunu serialize() fonksiyonu ile yapmamız mümkün.

serialize()

Şimdi kompleks bir dizimizi saklayacak hale getirelim.

$arr = [
	'Tayfun Erbilen',
	'site' => 'http://erbilen.net',
	1993,
	[
		'ad' => 'Tayfun',
		'soyad' => 'Erbilen'
	]
];

$data = serialize($arr);
echo $data;

/*
a:4:{i:0;s:14:"Tayfun Erbilen";s:4:"site";s:18:"http://erbilen.net";i:1;i:1993;i:2;a:2:{s:2:"ad";s:6:"Tayfun";s:5:"soyad";s:7:"Erbilen";}}
*/

unserialize()

Serialize ettiğimiz datayı tekrar eski orijinal haline getirmek istersekte şöyle yapacağız;

$arr = [
	'Tayfun Erbilen',
	'site' => 'http://erbilen.net',
	1993,
	[
		'ad' => 'Tayfun',
		'soyad' => 'Erbilen'
	]
];

$data = serialize($arr);
echo $data;

/*
a:4:{i:0;s:14:"Tayfun Erbilen";s:4:"site";s:18:"http://erbilen.net";i:1;i:1993;i:2;a:2:{s:2:"ad";s:6:"Tayfun";s:5:"soyad";s:7:"Erbilen";}}
*/

$array = unserialize($data);
print_r($array);

/*
(
    [0] => Tayfun Erbilen
    [site] => http://erbilen.net
    [1] => 1993
    [2] => Array
        (
            [ad] => Tayfun
            [soyad] => Erbilen
        )

)
*/

İşte bu şekilde kompleks verilerinizi veritabanında saklayabilirsiniz.

Bu işlemi ayrıca json_encode() ve json_decode() fonksiyonları ilede yapabilirsiniz. Merak edenler buraya tıklayıp inceleyebilir.

Yayınlayan

Tayfun Erbilen

2009'dan beri web işleriyle uğraşan, aynı zamanda amatör müziklede ilgilenen sıradan birisi..

“PHP serialize() ve unserialize() Fonksiyonları” üzerine bir yorum

  1. Sanırım WordPress’in verileri saklama biçimi de böyleydi. Bunun nedeni sadece complex verilerin oluşu mu?

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir