객체의 직렬화 및 역직렬화는 웹 개발에서 자주 사용됩니다. 더 주류는 json 형식과 xml 형식의 직렬화 및 역직렬화입니다. 오늘은 jsop의 작은 데모를 작성하고 싶었지만 PHP를 사용할 수 없다는 것을 알았습니다. 직렬화 정보를 확인하고 메모를 했습니다. 단순 배열 json 형식 직렬화/역직렬화
PHP는 json 형식의 객체를 직렬화/역직렬화하는 json_encode 및 json_decode 함수를 제공합니다.
$data=array('Name'=>'Byron','Age'=>24,'Sex'=>'Male','Friends'=>array('Cas
단순 배열 xml 형식 직렬화/역직렬화
PHP는 XML 형식의 객체를 직렬화/역직렬화하는 wddx_serialize_value 및 wddx_deserialize 함수를 제공합니다.
$data=array('Name'=>'Byron','Age'=>24,'Sex'=>'Male','Friends'=>array('Cas
HTML 트랜스코딩으로 인해 출력 형식이 이상하지만 실제로 직렬화된 문자열은 이렇습니다
json 형식에 비해 필드가 더 많습니다
복잡한 객체 json 형식 직렬화/역직렬화 작업을 수행할 때 우리가 처리하는 객체는 단순한 배열이 아니라 배열, json_encode 및 json_decode입니다. 또한 유능하다. 위의 배열과 유사한 내용으로 객체를 사용자 정의하세요.
class Me { public $name; public $age; public $friends; function __construct($name,$age,$friends) { $this->name=$name; $this->age=$age; $this->friends=$friends; } }
직렬화된 문자열 형식이 기대와 매우 일치한다는 것을 알 수 있습니다. 복잡한 객체 XML 형식 직렬화/역직렬화 wddx_serialize_value 및 wddx_deserialize 함수는 복잡한 객체에 대한 XML 형식 직렬화/역직렬화 작업도 가능합니다.
$me1=new Me('Byron',24,array('Casper','Frank','Vincent')); $me2=new Me('Casper',25,array('Byron','Frank','Vincent')); $me3=new Me('Frank',26,array('Casper','Byron','Vincent')); //创建一个复杂的数组,子元素是自定义类,自定义类中包含数组字段 $array_me=array($me1,$me2,$me3); $json=json_encode($array_me); //序列化对象数组为json字符串 echo $json.'<br/>'; $a=json_decode($json); //将json字符串反序列化为对象数组 foreach ($a as $aa) { echo $aa->name.'<br/>'; }
생성된 xml 문자열 구조는 다음과 같습니다
마지막으로 저는 PHP를 처음 접하는 사람입니다. 기사에 많은 오류가 있으므로 모두가 이를 비판하고 수정하기를 바랍니다.
php json 및 xml 직렬화/역직렬화와 관련된 더 많은 기사를 보려면 PHP 중국어 웹사이트를 주목하세요!