PHPJSON和XML序列化序列化

在Web开发中经常使用对象序列化和反序列化,主流是JSON格式和XML格式的序列化和反序列化,联合战略目标计划今天写一个小demo,发现不使用PHP序列化,查资料,做一个简单的JSON格式的序列化/反序列化数组的一个注记

PHP提供了json_encode和json_decode为JSON格式的序列化和序列化操作对象的功能
$data =阵列('name' = > 'byron时代= > 24,'sex= >凸出,朋友= >阵列('casper ','frank ','vincent '));$(美元= json_encode JSON数据); / /阵列作为一个JSON字符串echo JSON。;array_json = json_decode美元($ JSON); / / JSON字符串反序列化为阵(列表(美元的关键,美元的价值)=每($ array_json)){ if(!is_array(美元值)){ echo关键:美元的价值;美元关键:;}否则{ echo foreach($值作为当前美元){ echo$电流EMSP;回声;};} }

简单数组xml格式化序列化/序列化

PHP提供了wddx_serialize_value和wddx_deserialize XML序列化/序列化操作功能的对象
$data =阵列('name' = > 'byron时代= > 24,'sex= >凸出,朋友= >阵列('casper ','frank ','vincent '));$(美元= wddx_serialize_value XML数据); / /阵列为XML字符串echo $ XML;array_xml = wddx_deserialize美元($ XML); / / XML反序列化字符串作为数组的同时(列表(美元,美元的价值)=每($ array_xml)){ if(is_array!(美元值)){ echo关键:美元的价值;美元关键:;}否则{ echo foreach($值作为当前美元){ echo$电流EMSP;回声;};} }





虽然输出格式因HTML转码原因而奇怪,但序列化字符串实际上是这样的。



与JSON格式相比,有很多字段。
复杂对象JSON格式序列化/反序列化,很多时候,当我们在做操作时,我们处理的对象不是简单的数组,而是我们定制的对象数组。json_encode和json_decode也能干。定制一个类似上述数组的内容对象
班我{公共$name;公共美元美元时代;公众朋友;功能__construct($name,__construct,{);{ } } } } }。


ME1 =新的我('byron美元,24,阵列('casper ','frank ','vincent ');2美元=新的我('casper '),数组(25,'byron ','frank ','vincent ');3美元=新的我('frank '),数组(26,'casper ','byron ','vincent ')); / /创建一个复杂的子元素的数组是一个自定义的类,自定义类包含字段array_me美元=数组的数组($ ME1、ME2美元美元,ME3);$ JSON = json_encode($ array_me); / / JSON对象$ JSON序列化回波串数组。;$(美元= json_decode JSON); / / JSON字符串列为对象数组foreach($美元,AA){ echo AA ->名称。;}







可以看出,序列化字符串的格式与预期非常一致。复杂对象的序列化和反序列化的XML格式,同一wddx_serialize_value和wddx_deserialize功能还可以胜任复杂对象的序列化和反序列化的XML格式的操作,使用对象只是作为一个例子。
ME1 =新的我('byron美元,24,阵列('casper ','frank ','vincent ');2美元=新的我('casper '),数组(25,'byron ','frank ','vincent ');3美元=新的我('frank '),数组(26,'casper ','byron ','vincent ')); / /创建一个复杂的子元素的数组是一个自定义的类,自定义类包含字段array_me美元=数组的数组($ 1,2美元美元美元,ME3);XML = wddx_serialize_value($ array_me); / / XML的对象为XML序列化回波串数组。;$ = wddx_deserialize($ XML); / / XML字符串作为对象反序列化foreach数组($美元,AA){ echo AA ->名称。;}



生成的XML字符串结构如下所示

最后,php的第一个研究,文章有很多错误,希望各位指正指正。