数码资讯
分析的序列化与反序列化的JSON序列化和PHP操作
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
这篇文章讲述了差异的序列化和反序列化的JSON序列化和运行PHP。分享给您参考,如下:
序列化和反序列化的JSON序列化和PHP的区别是什么我们可以在萧边这一问题的看。具体操作如下。
在PHP中,两种序列化和JSON序列化或反序列化的对象或数组的区别是什么
假设一个对象和一个数组:
网络=新stdClass美元;
Web站点'tantengvip美元=>;
为Web ->业主= 'tuntun;
美元=年龄= 5;
元=数组();
{ } =网络'site美元'tantengvip;
{ } =网络'owner美元'tuntun;
网络时代{ } = $ 5;
他们是序列化和反序列化序列化序列化-功能和功能,分别看到打印的结果是什么,如下:
使用序列化方法:
var_dump(连载($网络));
var_dump(序列化(序列化($网络)));
var_dump(json_encode($网络));
var_dump(json_decode(json_encode($网络)));
结果uff1a
string'o:8:stdClass 3:{:4:现场;:10:tantengvip ;:5:业主:6:;屯屯;年龄;:3:我:5;}(长度= 87)
对象(stdClass){ 127 }
public'site= > string'tantengvip(长度= 10)
public'owner= > string'tuntun(长度= 6)
public'age ' = int 5
String'{site: tantengvip
对象(stdClass){ 127 }
public'site= > string'tantengvip(长度= 10)
public'owner= > string'tuntun(长度= 6)
public'age ' = int 5
使用JSON方法:
var_dump(连载($网络));
var_dump(序列化(序列化($网络)));
var_dump(json_encode($网络));
var_dump(json_decode(json_encode($网络),真的));
结果:
string'a:3:{:4:网站的:10:;tantengvip ;:5:业主:6:;屯屯;年龄;:3:我:5;}(长度= 74)
数组(大小= 3)
网站= > string'tantengvip(长度= 10)
主人= > string'tuntun(长度= 6)
年龄= > int 5
字符串{现场:tantengvip
数组(大小= 3)
网站= > string'tantengvip(长度= 10)
主人= > string'tuntun(长度= 6)
年龄= > int 5
我们发现一个以前定义的对象或数组,它是序列化和JSON序列化。反序列化的结果与以前一样,只是序列化的格式不同。
那么它们之间有什么区别呢下面的文字非常好,你不能解释它,你可以写代码验证。
使用JSON序列化和反序列化
优势:
变量被序列化并且仍然可读。
它可以用于其他系统,因为JSON格式是标准的。
uff1a自卑
只有UFT-8的数据是有效的,其他的编码可能无法正常工作
这类的例子是有效stdClass
使用序列化和反序列化序列化
优势:
允许非UTF-8的变量
支持例外stdClass的其他实例
uff1a自卑
编码的文本难以理解的人
不能用其他语言的系统引用
那么,写一个代码看看:
类测试
{
私人$ PRI =先;
公共课=测试美元;
公共功能__construct()
{
美元->类测试结构;
美元->优先级=先构造;
}
}
新测试();
var_dump(连载($试验));
var_dump(序列化(序列化($测试)));
var_dump(json_encode($试验));
var_dump(json_decode(json_encode($测试)));
结果uff1a
string'o:4:测试2:{:9:testpri ;:13:PRI构建;:5类;:14:测试建构;}(长度= 86)
对象(测试){ 127 }
private'pri= > string'pri建构(长度= 13)
public'class= > string'test建构(长度= 14)
字符串类:测试构造}(长度= 26)
对象(stdClass){ 127 }
public'class= > string'test建构(长度= 14)
我们发现JSON序列化和反序列化的类的私有成员变量了,而序列化序列化与反序列化的类中的所有变量,但该类的成员方法不能被序列化和反序列化。
一般来说,最好是使用JSON,因为JSON是一个跨平台的通用格式,使用JSON的例外,它是更好地使用XML。当不使用序列化
当一个类的序列化序列化,它会调用魔法__wakeup()默认情况下,使对象重建各种状态不能保存序列化过程。例如:数据库连接等等。这是另一个问题,并不是要在这里学习。
关于PHP相关内容的更多读者感兴趣的读者可以看到特别站:PHP字符串(字符串)、PHP使用摘要数组(数组)、PHP技能大全教程
希望本文能对PHP程序设计有所帮助。
序列化和反序列化的JSON序列化和PHP的区别是什么我们可以在萧边这一问题的看。具体操作如下。
在PHP中,两种序列化和JSON序列化或反序列化的对象或数组的区别是什么
假设一个对象和一个数组:
网络=新stdClass美元;
Web站点'tantengvip美元=>;
为Web ->业主= 'tuntun;
美元=年龄= 5;
元=数组();
{ } =网络'site美元'tantengvip;
{ } =网络'owner美元'tuntun;
网络时代{ } = $ 5;
他们是序列化和反序列化序列化序列化-功能和功能,分别看到打印的结果是什么,如下:
使用序列化方法:
var_dump(连载($网络));
var_dump(序列化(序列化($网络)));
var_dump(json_encode($网络));
var_dump(json_decode(json_encode($网络)));
结果uff1a
string'o:8:stdClass 3:{:4:现场;:10:tantengvip ;:5:业主:6:;屯屯;年龄;:3:我:5;}(长度= 87)
对象(stdClass){ 127 }
public'site= > string'tantengvip(长度= 10)
public'owner= > string'tuntun(长度= 6)
public'age ' = int 5
String'{site: tantengvip
对象(stdClass){ 127 }
public'site= > string'tantengvip(长度= 10)
public'owner= > string'tuntun(长度= 6)
public'age ' = int 5
使用JSON方法:
var_dump(连载($网络));
var_dump(序列化(序列化($网络)));
var_dump(json_encode($网络));
var_dump(json_decode(json_encode($网络),真的));
结果:
string'a:3:{:4:网站的:10:;tantengvip ;:5:业主:6:;屯屯;年龄;:3:我:5;}(长度= 74)
数组(大小= 3)
网站= > string'tantengvip(长度= 10)
主人= > string'tuntun(长度= 6)
年龄= > int 5
字符串{现场:tantengvip
数组(大小= 3)
网站= > string'tantengvip(长度= 10)
主人= > string'tuntun(长度= 6)
年龄= > int 5
我们发现一个以前定义的对象或数组,它是序列化和JSON序列化。反序列化的结果与以前一样,只是序列化的格式不同。
那么它们之间有什么区别呢下面的文字非常好,你不能解释它,你可以写代码验证。
使用JSON序列化和反序列化
优势:
变量被序列化并且仍然可读。
它可以用于其他系统,因为JSON格式是标准的。
uff1a自卑
只有UFT-8的数据是有效的,其他的编码可能无法正常工作
这类的例子是有效stdClass
使用序列化和反序列化序列化
优势:
允许非UTF-8的变量
支持例外stdClass的其他实例
uff1a自卑
编码的文本难以理解的人
不能用其他语言的系统引用
那么,写一个代码看看:
类测试
{
私人$ PRI =先;
公共课=测试美元;
公共功能__construct()
{
美元->类测试结构;
美元->优先级=先构造;
}
}
新测试();
var_dump(连载($试验));
var_dump(序列化(序列化($测试)));
var_dump(json_encode($试验));
var_dump(json_decode(json_encode($测试)));
结果uff1a
string'o:4:测试2:{:9:testpri ;:13:PRI构建;:5类;:14:测试建构;}(长度= 86)
对象(测试){ 127 }
private'pri= > string'pri建构(长度= 13)
public'class= > string'test建构(长度= 14)
字符串类:测试构造}(长度= 26)
对象(stdClass){ 127 }
public'class= > string'test建构(长度= 14)
我们发现JSON序列化和反序列化的类的私有成员变量了,而序列化序列化与反序列化的类中的所有变量,但该类的成员方法不能被序列化和反序列化。
一般来说,最好是使用JSON,因为JSON是一个跨平台的通用格式,使用JSON的例外,它是更好地使用XML。当不使用序列化
当一个类的序列化序列化,它会调用魔法__wakeup()默认情况下,使对象重建各种状态不能保存序列化过程。例如:数据库连接等等。这是另一个问题,并不是要在这里学习。
关于PHP相关内容的更多读者感兴趣的读者可以看到特别站:PHP字符串(字符串)、PHP使用摘要数组(数组)、PHP技能大全教程
希望本文能对PHP程序设计有所帮助。
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。