讲解PHP面向对象序列化、反序列化的相关代码
Jun 08, 2018 pm 02:09 PMPHP面向对象序列化、反序列化的内容在php中很重要,本篇文章讲讲解其相关的代码内容。
序列化 (Serialization):将对象的状态信息转换为可以存储或传输的形式的过程。
警告:各种语言所采用的序列化机制往往不一样,不兼容。
1 序列化serialize()
1 |
|
serialize() 返回字符串,此字符串包含了表示 value 的字节流,同时不丢失其类型和结构。
serialize() 可处理除了 resource 之外的任何类型。甚至可以 serialize() 那些包含了指向其自身引用的数组。
当序列化对象时,PHP 将试图在序列动作之前调用该对象的成员函数 __sleep()。这样就允许对象在被序列化之前做任何清除操作。
2 反序列化unserialize()
mixed unserialize ( string $str )
想要将已序列化的字符串变回 PHP 的值,可使用 unserialize()。
当使用 unserialize() 恢复对象时, 将调用 __wakeup() 成员函数。
如果要想在另外一个文件中反序列化一个对象,必须要在反序列化之前定义这个对象的类。
// 未定义对象的类时,如果反序列化,会得到下面的__PHP_Incomplete_Class对象,不含方法。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
|
本篇文章详解了HP面向对象序列化、反序列化的相关代码的内容,更多相关知识请关注php中文网。
相关推荐:
在PHP中使用魔术方法__CLASS__来获取类名的相关操作
以上是讲解PHP面向对象序列化、反序列化的相关代码的详细内容。更多信息请关注PHP中文网其他相关文章!

热门文章

热门文章

热门文章标签

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

适用于 Ubuntu 和 Debian 的 PHP 8.4 安装和升级指南

如何设置 Visual Studio Code (VS Code) 进行 PHP 开发
