PHP中serialize的详细介绍

2020-08-28

/2020/08/c6ca7f00.jpg

serialize

serialize() 返回字符串,此字符串包含了表示value 的字节流,可以存储于任何地方。

这有利于存储或传递 PHP 的值,同时不丢失其类型和结构。

想要将已序列化的字符串变回 PHP 的值,可使用unserialize() 。

serialize()可处理除了resource之外的任何类型。甚至可以serialize()那些包含了指向其自身引用的数组。

你正serialize()的数组/对象中的引用也将被存储。

当序列化对象时,PHP将试图在序列动作之前调用该对象的成员函数__sleep() 。

这样就允许对象在被序列化之前做任何清除操作。类似的,当使用unserialize()恢复对象时,将调用__wakeup()成员函数。

Note:

在 PHP 3 中,对象属性将被序列化,但是方法则会丢失。PHP 4 打破了此限制,可以同时存储属性和方法。请参见类与对象中的序列化对象部分获取更多信息。

示例

$arr = array (    
       'liqingbo'=> '李清波'    
       ,'zhangxueyou'=> '张学友'
       ,'guofucheng'=> '郭富城'
    );    
     
$seri = serialize($arr);

输出:

a:3:{s:8:"lciqingbo";s:9:"李清波";s:11:"zhangxueyou";s:9:"张学友";s:10:"guofucheng";s:9:"郭富城";}

推荐教程:《PHP视频教程》

以上就是PHP中serialize的详细介绍的详细内容,更多请关注北冥有鱼其它相关文章!

本文转载自【PHP中文网】,希望能给您带来帮助,苟日新、日日新、又日新,生命不息,学习不止。

《PHP中serialize的详细介绍.doc》

下载本文的Word格式文档,以方便收藏与打印。