介绍
通过PHP中的serialze()函数可以获得字节流形式的任何对象的字符串表示形式。对象的所有属性变量都包含在字符串中,并且方法不保存。该字符串可以存储在任何文件中。
要从字节流中检索对象,有unserialize()
方法。调用unserialize()函数之前,必须有相应类的定义。
示例
首先,让我们序列化以下类的对象,并将字符串存储在文件中。
<?php class test1{ private $name; function __construct($arg){ $this->name=$arg; } } $obj1=new test1("Kiran"); $str=serialize($obj1); $fd=fopen("obj.txt","w"); fwrite($fd, $str); fclose($fd); ?>
在当前文件夹中,创建obj.txt。为了反序列化,以下代码从从给定文件读取的字节流中重建对象
示例
<?php class test1{ private $name; function __construct($arg){ $this->name=$arg; } function getname(){ return $this->name; } } $filename="obj.txt"; $fd=fopen("obj.txt","r"); $str=fread($fd, filesize($filename)); $obj=unserialize($str); echo "name: ' . $obj->getname(); ?>
输出结果
上面的代码现在在输出之后返回名称
name: Kiran
热门文章
- 宠物领养协议有效吗知乎(宠物领养协议是什么)
- vuex配置项、多组件数据共享案例详解
- 2021年河南动物疫苗中标公告公布时间(河南省2021年动物疫苗中标公告)
- 1月5日 | SingBox每天更新18.7M/S免费节点链接地址分享
- servlet 中 servlet context 与 session 与 request 三个对象的常用方法和存放数据的作用域。
- 上海宠物领养站电话地址(上海宠物领养站电话地址是多少)
- 领养宠物狗免费的平台有哪些的简单介绍
- 1月8日 | SingBox每天更新18.8M/S免费节点链接地址分享
- Go_error处理及panic、recover使用的正确姿势
- 动物接种疫苗后多久产生抗体?(动物疫苗间隔时间)