downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

생성자 안에서 참조> <객체 일렬화 - 세션 내의 객체
Last updated: Fri, 24 Jul 2009

view this page in

매직함수 __sleep__wakeup

serialize()는 클래스가 __sleep라는 매직 이름을 갖는 함수를 갖는지 체크한다. 이 함수를 갖고있다면, 일렬화되기 전에 이 함수가 수행된다. 이 함수는 객체를 깨끗하게 비울수 있고, 일렬화되어야 하는 그 객체의 모든 변수명을 갖는 배열을 돌려준다. 이 메쏘드가 아무것도 반환하지 않는다면, NULL이 일렬화되고 E_NOTICE가 발생합니다.

__sleep의 의도된 사용은 지연된 데이터를 커밋하거나 비슷한 정리 작업을 수행하는 것입니다. 또한, 완전히 저장할 필요가 없는 매우 거대한 객체를 갖고 있다면 이 함수를 유용하게 쓸수 있다.

반대로, unserialize()__wakeup라는 매직 이름을 갖는 함수의 존재를 체크한다. 이 함수가 존재하면, 객체가 갖고 있을지도 모르는 모든 자원을 해제할수 있다.

__wakeup의 의도된 사용은 일렬화동안에 소실될수 있는 모든 데이터베이스 접속을 재구축하고 다른 재초기화 작업을 수행 한다.



add a note add a note User Contributed Notes
매직함수 __sleep와 __wakeup
There are no user contributed notes for this page.

 
show source | credits | sitemap | contact | advertising | mirror sites