Serialization은 객체를 전송하기 쉬운 형식으로 변환하는 과정입니다. 일반적으로 스트림 파일로 변환되어 메모리나 IO 파일에 저장됩니다.
예를 들어, 객체를 직렬화한 다음 객체를 통해 보낼 수 있습니다. HTTP를 사용하는 인터넷 개체는 클라이언트와 서버 간에 전송되거나 다른 응용 프로그램과 공유됩니다. 반대로 역직렬화는 스트림에 따라 객체를 재구성합니다.
PHP 직렬화: (권장 학습: 입력에서 마스터까지의 PHP 프로그래밍)
string serialize ( mixed $value )
Serialization 입니다. 변수나 객체를 문자열로 변환하는 과정.
직렬화 중에 시스템은 먼저 __sleep() 매직 메서드를 호출한 다음 가져올 옷을 고르러 나가는 것처럼 내부의 데이터를 필터링합니다. 기본값은 an의 모든 속성입니다. object. 다음과 같이 serialize() 함수를 호출합니다.
<?php class Animal{ public $name; public $age; public $height; function __construct($name,$age,$heigh){ $this->name=$name; $this->age=$age; $this->height=$heigh; } function __sleep(){ $this->name="小白猫"; return ['name','age',]; } function __wakeup(){ } } $cat=new Animal("小花猫",5,20); var_dump(serialize($cat)); ?>
위의 예에서 최종 출력 직렬화된 콘텐츠는 다음과 같습니다.
# 🎜🎜#
직렬화 과정과 콜백 함수의 관계: 콜백 함수의 개념은 함수의 매개변수가 다른 함수의 반환 값이며, 직렬화 중에 , serialize() 함수의 매개변수 __sleep() 함수의 반환 값이므로 직렬화 과정은 콜백 함수의 실행 과정입니다.
위 내용은 PHP는 왜 직렬화해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!