PHP对象序列化
介绍
通过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
热门推荐
10 小红书平安祝福语简短
11 生日祝福语大全女孩简短
12 收生日红包祝福语 简短
13 领证幽默祝福语简短
14 法考面试祝福语简短
15 老哥出门祝福语简短语
16 送灯祝福语简短独特
17 幼儿狗年祝福语大全简短
18 好听的元旦简短祝福语