[PHP] 클래스의 직렬화, 역직렬화

웹 & 안드로이드/PHP|2014. 2. 11. 09:43

해당하는 요청에 사용하는 객체를 세션에 저장하고 싶을 경우, 직렬화를 사용하면 된다.

 

serialize() : 객체를 스트링 타입의 정보로 리턴.

unserialize() : serialize()함수에 의해 직렬화된 스트링 타입의 정보를 다시 객체화.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
$seri_cls = serialize(new Test()); #Test클래스를 새로 생성하여 직렬화.
 
echo $seri_cls;
 
$unseri_cls = unserialize($seri_cls); #직렬화된 클래스를 역직렬화.
 
echo $unseri_cls->num;
echo $unseri_cls->str;
 
class Test{
    public $num = 10;
    public $str = 'class';
}
 
?>

결과값

 

O:4:"Test":2:{s:3:"num";i:10;s:3:"str";s:5:"class";}10class

 

- O:4:"Test":2:{s:3:"num";i:10;s:3:"str";s:5:"class";}

 : 객체를 직렬화한 스트링 타입의 정보.

 

 

댓글()