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中上传大体积文件时需要的设置
Oct 09 PHP
ThinkPHP关于session的操作方法汇总
Jul 18 PHP
php中$_POST与php://input的区别实例分析
Jan 07 PHP
分享微信扫码支付开发遇到问题及解决方案-附Ecshop微信支付插件
Aug 23 PHP
php生成高清缩略图实例详解
Dec 07 PHP
PHP微信开发用Cache 解决数据缓存
Jul 11 PHP
PHP面向对象中new self()与 new static()的区别浅析
Aug 17 PHP
PHP _construct()函数讲解
Feb 03 PHP
php创建类并调用的实例方法
Sep 25 PHP
PHP读取文件,解决中文乱码UTF-8的方法分析
Jan 22 PHP
php的RSA加密解密算法原理与用法分析
Jan 23 PHP
让你的PHP,APACHE,NGINX支持大文件上传
Mar 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统计目录下的文件总数及代码行数(去除注释及空行)
2011/01/17 PHP
PHP7 mongoDB扩展使用的方法分享
2019/05/02 PHP
用javascript连接access数据库的方法
2006/11/17 Javascript
关于jquery append() html时的小问题的解决方法
2010/12/16 Javascript
jquery实现类似EasyUI的页面布局可改变左右的宽度
2020/09/12 Javascript
js控制文本框输入的字符类型方法汇总
2015/06/19 Javascript
JS获取下拉框显示值和判断单选按钮的方法
2015/07/09 Javascript
html+js+highcharts绘制圆饼图表的简单实例
2016/08/04 Javascript
AngularJs 国际化(I18n/L10n)详解
2016/09/01 Javascript
探索webpack模块及webpack3新特性
2017/09/18 Javascript
微信小程序scroll-view组件实现滚动动画
2018/01/31 Javascript
Vue中v-show添加表达式的问题(判断是否显示)
2018/03/26 Javascript
vue 优化CDN加速的方法示例
2018/09/19 Javascript
Vue 利用指令实现禁止反复发送请求的两种方法
2019/09/15 Javascript
[00:33]2016完美“圣”典风云人物:Sccc宣传片
2016/12/03 DOTA
django实现前后台交互实例
2017/08/07 Python
Python爬虫实现爬取京东手机页面的图片(实例代码)
2017/11/30 Python
python编程通过蒙特卡洛法计算定积分详解
2017/12/13 Python
django 使用全局搜索功能的实例详解
2019/07/18 Python
浅谈Python_Openpyxl使用(最全总结)
2019/09/05 Python
python爬虫开发之使用Python爬虫库requests多线程抓取猫眼电影TOP100实例
2020/03/10 Python
用python实现学生管理系统
2020/07/24 Python
详解CSS3浏览器兼容
2016/12/14 HTML / CSS
意大利团购网站:Groupon意大利
2016/10/11 全球购物
银行自荐信范文
2013/10/07 职场文书
会计专业推荐信
2013/10/29 职场文书
心理学专业毕业生推荐信范文
2013/11/21 职场文书
客服服务心得体会
2013/12/30 职场文书
《莫高窟》教学反思
2014/02/25 职场文书
求职自荐信的格式
2014/04/07 职场文书
社会公德演讲稿
2014/05/20 职场文书
法院信息化建设方案
2014/05/21 职场文书
公司党的群众路线教育实践活动领导班子对照检查材料
2014/09/25 职场文书
学校捐书倡议书
2015/04/27 职场文书
2015年化工厂工作总结
2015/05/04 职场文书
matplotlib画混淆矩阵与正确率曲线的实例代码
2021/06/01 Python