>백엔드 개발 >PHP 튜토리얼 >PHP 직렬화에 대한 자세한 소개

PHP 직렬화에 대한 자세한 소개

coldplay.xixi
coldplay.xixi앞으로
2020-06-09 11:22:543226검색

PHP 직렬화에 대한 자세한 소개

serialize

serialize()는 문자열을 반환합니다. 이 문자열은 값을 나타내는 바이트 스트림을 포함하며 어디에나 저장할 수 있습니다.

이는 유형과 구조를 잃지 않고 PHP 값을 저장하거나 전달하는 데 유용합니다.

직렬화된 문자열을 다시 PHP 값으로 변경하려면 unserialize()를 사용할 수 있습니다.

serialize()는 리소스를 제외한 모든 유형을 처리할 수 있습니다. 자신에 대한 참조가 포함된 배열을 serialize()할 수도 있습니다.

직렬화()하는 배열/객체의 참조도 저장됩니다.

객체를 직렬화할 때 PHP는 시퀀스 작업 전에 객체의 멤버 함수 __sleep()을 호출하려고 시도합니다.

이를 통해 직렬화되기 전에 객체에 대한 모든 정리 작업을 수행할 수 있습니다. 마찬가지로, unserialize()를 사용하여 객체를 복원하면 __wakeup() 멤버 함수가 호출됩니다.

참고:

PHP 3에서는 객체 속성이 직렬화되지만 메서드는 손실됩니다. PHP 4는 이러한 제한을 깨고 속성과 메서드를 동시에 저장할 수 있습니다. 자세한 내용은 클래스 및 개체의 직렬화된 개체 섹션을 참조하세요.

Example

$arr = array (    
       'liqingbo'=> '李清波'    
       ,'zhangxueyou'=> '张学友'
       ,'guofucheng'=> '郭富城'
    );    
     
$seri = serialize($arr);

출력:

a:3:{s:8:"lciqingbo";s:9:"李清波";s:11:"zhangxueyou";s:9:"张学友";s:10:"guofucheng";s:9:"郭富城";}

추천 튜토리얼: "PHP Video Tutorial"

위 내용은 PHP 직렬화에 대한 자세한 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 liqingbo.cn에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제