PHP中串行化用法示例


Posted in PHP onNovember 16, 2016

本文实例讲述了PHP中串行化用法。分享给大家供大家参考,具体如下:

功能:串行化用于对对象的存储或者传输,通过反串行化得到这个对象。

1. Person.class.php:

<?php
/*
作者 : shyhero
*/
class Person{ //声明一个Person类
  public $age;
  private $name;
  protected $sex;
  public function __construct($age="",$name="",$sex=""){
   $this -> age = $age;
   $this -> name = $name;
   $this -> sex = $sex;
  }
  public function say(){
   return $this -> age." ".$this -> name." ".$this -> sex;
  }
  function __sleep(){ //指定串行化时能提取的成员属性,没有参数,但是必须返回一个数组
   $arr = array("age","name");
   return $arr;
  }
  function __wakeup(){ //指定反串行化时,提取出来的值
   $this -> sex = "woman";
  }
}

2. 串行化代码

<?php
  require("./Person.class.php");
  $p = new Person(21,"du","man"); //定义Person类对象
  $pString = serialize($p);  //对对象进行串行化
  file_put_contents("./file.txt",$pString);//存到文件里

3. 反串行化代码

<?php
  require("./Person.class.php");//反串行化时,也要包含原类
  $pString = file_get_contents("./file.txt");//从文件中取出串行化的值
  $p = unserialize($pString);//进行反串行化
  var_dump($p);  //这个 $p就是之前那个串行化的对象,一样用,但是里面的值被我改了

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
坏狼的PHP学习教程之第2天
Jun 15 PHP
PHP 上传文件大小限制
Jul 05 PHP
php处理json时中文问题的解决方法
Apr 12 PHP
PHP文件注释标记及规范小结
Apr 01 PHP
php递归获取目录内文件(包含子目录)封装类分享
Dec 25 PHP
PHP反射机制用法实例
Aug 28 PHP
php实现删除指定目录下相关文件的方法
Oct 20 PHP
php程序总是提示验证码输入有误解决方案
Jan 07 PHP
PHP统计数值数组中出现频率最多的10个数字的方法
Apr 20 PHP
基于PHP生成简单的验证码
Jun 01 PHP
PHP控制前台弹出对话框的实现方法
Aug 21 PHP
PHP编程实现计算抽奖概率算法完整实例
Aug 09 PHP
PHP单态模式简单用法示例
Nov 16 #PHP
php实现替换手机号中间数字为*号及隐藏IP最后几位的方法
Nov 16 #PHP
php实现当前页面点击下载文件的实例代码
Nov 16 #PHP
php 文件下载 出现下载文件内容乱码损坏的解决方法(推荐)
Nov 16 #PHP
PHP Header失效的原因分析及解决方法
Nov 16 #PHP
php把时间戳转换成多少时间之前函数的实例
Nov 16 #PHP
php导出csv文件,可导出前导0实例代码
Nov 16 #PHP
You might like
PHP实现全角字符转为半角方法汇总
2015/07/09 PHP
PHP基于单例模式实现的数据库操作基类
2016/01/15 PHP
你所要知道JS(DHTML)中的一些技巧
2007/01/09 Javascript
IE8 兼容性问题(属性名区分大小写)
2009/06/04 Javascript
ie与ff下的event事件使用介绍
2013/11/25 Javascript
node.js使用nodemailer发送邮件实例
2014/03/10 Javascript
javascript实现链接单选效果的方法
2015/05/13 Javascript
JS+CSS实现TreeMenu二级树形菜单完整实例
2015/09/18 Javascript
javascript学习笔记整理(概述、变量、数据类型简介)
2015/10/25 Javascript
js操作table元素实现表格行列新增、删除技巧总结
2015/11/18 Javascript
AngularJS中的Directive实现延迟加载
2016/01/25 Javascript
jQuery针对input的class属性写了多个值情况下的选择方法
2016/06/03 Javascript
BootStrap Validator 版本差异问题导致的submitHandler失效问题的解决方法
2016/12/01 Javascript
Vue组件选项props实例详解
2017/08/18 Javascript
JS实现的ajax和同源策略(实例讲解)
2017/12/01 Javascript
ElementUI Tag组件实现多标签生成的方法示例
2019/07/08 Javascript
Angular8 简单表单验证的实现示例
2020/06/03 Javascript
[01:24:51]2014 DOTA2华西杯精英邀请赛 5 25 LGD VS NewBee第二场
2014/05/26 DOTA
在Mac下使用python实现简单的目录树展示方法
2018/11/01 Python
深入了解Python枚举类型的相关知识
2019/07/09 Python
Python 给下载文件显示进度条和下载时间的实现
2020/04/02 Python
jupyter notebook 参数传递给shell命令行实例
2020/04/10 Python
Python 使用生成器代替线程的方法
2020/08/04 Python
爱尔兰电子产品购物网站:Komplett.ie
2018/04/04 全球购物
GAZMAN官网:澳大利亚领先的男装品牌
2019/12/19 全球购物
电气技术员岗位职责
2013/11/19 职场文书
国贸专业个人求职信范文
2014/01/08 职场文书
初中三年毕业生的自我评价分享
2014/02/14 职场文书
党员公开承诺践诺书
2014/03/25 职场文书
授权委托书
2014/07/31 职场文书
婚庆公司计划书
2014/09/15 职场文书
区长工作作风个人整改措施
2014/10/01 职场文书
工伤事故赔偿协议书
2014/10/27 职场文书
朋友聚会开场白
2015/06/01 职场文书
2015年学校医务室工作总结
2015/07/20 职场文书
2016关于学习党章的心得体会
2016/01/15 职场文书