PHP는 두 가지 기능을 제공합니다. 하나는 직렬화이고 다른 하나는 직렬화 해제입니다. 그러면 이 두 기능의 용도는 무엇입니까?
직렬화는 리소스를 제외한 PHP의 모든 데이터 유형을 문자열로 직렬화할 수 있습니다. 여기서는 객체를 예로 들어 클래스
class vb{
private $를 정의합니다. a;
비공개 $b;
함수 __construct($a='peng',$b='luo'){
$this ->a=$ a;
$this->b=$b;
}
public function talk(){
return $this->a .$this->b;
}
}
$obj=new vb() ;
$obj를 직렬화합니다
$c= serialize($obj); $c를 인쇄한 후 O:2:"vb ":2{s:5 :"vba";s:4:"peng";s:5:"vbb";s:3:"luo";}
이 문자열을 역으로 바꿔 보겠습니다. 직렬화,
$c =unserialize($c); 인쇄
print_r($c);
vb Object ( [a:private] => peng [b:private] => luo )
이 시점에서 객체를 얻었고, 객체의 속성과 메서드를 호출할 수 있습니다.
echo $c->speak() ;
사실 이 두 가지는 함수는 어렵지 않은데 언제 사용해야 하는지, 용도가 무엇인지 모르는 분들이 많습니다.
이 함수의 가장 큰 용도는 데이터 형식을 파일에 넣을 때 복잡하게 저장하고 싶다는 점입니다. 또는 데이터베이스의 역할을 공개할 수 있습니다