PHP笔记之对象串行化

串行化:序列化,将对象转成字符串
应用场合:
1.将对象在网络中传输
2.将对象持久保存

将一个对象串行化

    $p = new Person("wp",10,"man");
    $str = serialize($p);
    file_put_contents("objstr", $str);
    echo "保存成功";

将串行化后的字符串反串行化

      //读出字符串从文件中
    $str = file_get_contents("objstr.txt");
    //返串行化
    $p = unserialize($str);

串行化的魔法函数
__sleep
可以设置需要串行化的对象的属性,只要在这个方法中,返回一个数组,在数组中声明了那个属性名,那个属性就会被串行化,没有在这个数组中的就不被串行化,默认是全部串行化

echo "数组串行化自动调用 ";
return array("name","age");

__wakeup()
在反串行化时自动调用的方法,对串行化回来的对象,进行初始化,类似于__construct()和__clone()

function __wakeup(){
            $this->name = 10;
}

json格式转化

$arr = array("name"=>"wp","age"=>10,"sex"=>“man”);
//串行化
$str = json_encoder($arr);

//反串行化,第二个参数true反串行化为数组,如果不加第二个参数,默认返回的是对象
$parr = json_decode($str,true);
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 11,096评论 6 13
  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 3,267评论 0 4
  • 宿命一只小飞虫饿了或许是那张网太漂亮只见它很不甘心的趴在银丝网上挣扎它的疼像是在我身上一开始它肯定是心花怒放的中间...
    金书js阅读 226评论 4 6
  • 须臾间,2017已匆匆过半,默然回首,这漫长的五月似乎没留下任何的痕迹,潸然远去...... 现在的我懒的要命,整...
    妩晴阅读 144评论 0 0
  • 前言 上一篇 视频采集demo地址 正文 ios中视频流渲染有三种方法: AVCaptureVideoPrevie...
    远方的枸杞阅读 3,219评论 8 4