php串行化

<?php

//serialize()==>串行化将数据对象转换成二进制数据格式
/*class person{
var $name="我";
function Say($content="ha!"){
echo $this->name."Say:".$content;
}
}
$p=new person();
$str=serialize($p);
//echo $str;
$file=fopen("temp.txt","w");
fwrite($file,$str);
fclose($file);
//Unserialize()==>反串行化将二进制转换回来
include "Cxh.php";
$file=fopen("temp.txt","r");
$str=fread($file,filesize("temp.txt"));
fclose($file);
$p=unserialize($str);
$p->Say();
//__sleep()==>在对象串行化的时候自动调用的方法。不被返回的元素,同样也不被串行化。
class person{
var $name="我";
var $age;
var $sex;
function __sleep(){
return array("name","age");
}
}
$p=new person();
$str=serialize($p);
echo $str;
//__wakeup()在对象反串行化的时候自动调用的方法可以对返回后的属性进行初始化。
class person{
var $name="我";
var $age;
var $sex;
function __sleep(){
return array("name","age");
}
function __wakeup(){
$this->name="你";
$this->age=19;
}
}
$p=new person();
$str=serialize($p);
$p=unserialize($str);
echo $p->name;*/

posted @ 2016-11-16 13:56  PHP_zhang  阅读(376)  评论(0编辑  收藏  举报