PHP之序列化
来源:互联网 发布:泰拉瑞亚ios联机软件 编辑:程序博客网 时间:2024/06/03 18:22
序列化就是将变量数据转换为字符串(跟类型转换机制不同),一般应用于存储数据(文件),然后在别的情形下恢复(反序列化)
序列化:
$val = serialize($var);file_put_contents('./*.txt',$val);
反序列化:
$val = file_get_contents('./*.txt');$var = unserialize($val);
当一个对象进行序列化操作时,会自动调用类中的__sleep();
当反序列化一个对象的时候,会自动调用对应类的__wakeup(),反序列操作中,必须具备了对应的类的声明。
__sleep()中可以进行一些数据(资源)的清理关闭操作,并返回一个数组,该数组存储一些需要进行序列化的对象的属性,即可以挑选属性进行序列化。
class bee{ public $a; protected $b; private $c; public function __sleep(){ return array('a','b'); }}
__wakeup()在进行反序列话操作的时候进行某些有用的‘数据恢复工作’,比如连接数据库
public function __wakeup(){ $this->func();}
__tostring()
当把一个对象当作一个字符串来看待处理的时候,会自动调用该方法。通过该方法可以返回合适的字符串,如果没该定义该方法就会出错。
class bee{ public function __tostring(){ echo 'string'; }}$obj = new bee();//对象不能直接当字符串使用echo $obj;
__invoke()
当对象当作一个方法使用的时候,会自动调用该方法
class bee{ public function __invoke(){ echo 'invoke'; }}$obj = new bee();//对象不能直接当字符串使用echo $obj();
0 0
- PHP之序列化
- php高级编程之序列化
- php面向对象之序列化与反序列化
- PHP核心技术与最佳实践之对象的序列化
- PHP基础教程十三之反射、对象序列化
- serializable序列化 php
- php serialize序列化
- PHP----序列化
- php 序列化 serialize
- PHP 对象序列化
- php 序列化对象
- php中的序列化
- php数组函数序列之array_unique()
- PHP串行化(序列化)
- PHP中的序列化问题
- 83. PHP 对象序列化
- PHP serialize 序列化数组
- PHP-迭代器与序列化
- 58. Length of Last Word
- 205. Isomorphic Strings
- 51nod 1461 稳定桌
- 20. Valid Parentheses
- 二叉树morris遍历的算法笔记(手写)
- PHP之序列化
- bind:address already in use的深刻教训以及解决办法
- nodejs
- Android开发 用AndroidStudio开发百度地图Demo时的经典错误230的另一种可能
- Android开发使用的常见第三方框架汇总
- idea的使用之svn篇--有图超详细
- html下拉框之间的联动------一级分类和二级分类
- 【poj2230】Watchcow——dfs
- leetcode-139-Word Break