Data Analysis for Investment & Control

PHP - serialize() / unserialize() 본문

Code/WEB

PHP - serialize() / unserialize()

아슈람 2010. 10. 25. 18:16
반응형

serialize는 값의 저장 표현을 생성합니다. 이는 PHP 값을 저장하거나 전달할 때 자료형이나 구조를 잃어버리지 않게 합니다. 일렬화된 문자열을 다시 PHP 변수로 만들려면, unserialize()를 사용합니다.

string serialize ( mixed $value )

value : 일렬화할 값. serialize()는 resource 형을 제외한 모든 형을 다룹니다. 자기 자신을 참조하는 배열을 serialize() 할 수도 있습니다. 배열/객체 안의 순환 참조도 일렬화하여 저장됩니다. 그 외의 다른 참조는 읽어버립니다.

객체를 일렬화할 때, 일렬화 전에 _sleep 멤버 함수를 호출합니다. 이로써 일렬화하기 전에 객체를 마지막으로 정리할 수 있습니다. 마찬가지로 unserialize()을 사용하여 객체를 되돌릴 때는 _wakeup 멤버 함수를 호출합니다.

return
value의 어디에라도 저장할 수 있는 바이트 스트림 표현을 가지는 문자열을 반환합니다.

예제)
 


unserialize는 하나의 일렬화된 변수를 받아서 PHP 값으로 변환합니다.

string unserialize ( mixed $str )

str : 일렬화된 문자열. 변수가 객체로 unserialize되고, 성공적으로 객체로 재구성되면, PHP는 자동적으로 _wakeup() 멤버 함수를 호출합니다. (존재한다면)

return
변환된 값이 반환되며, boolean, integer, float, string, array, object가 될 수 있습니다. 주어진 문자열에서 일렬화를 풀 수 없을 때는 FALSE를 반환하고 E_NOTICE가 발생합니다.

예제)
 


반응형
Comments