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 相关文章推荐
Linux下 php5 MySQL5 Apache2 phpMyAdmin ZendOptimizer安装与配置[图文]
Nov 18 PHP
php文件打包 下载之使用PHP自带的ZipArchive压缩文件并下载打包好的文件
Jun 13 PHP
比较简单的百度网盘文件直链PHP代码
Mar 24 PHP
php的POSIX 函数以及进程测试的深入分析
Jun 03 PHP
PHP rawurlencode与urlencode函数的深入分析
Jun 08 PHP
解析thinkphp中的M()与D()方法的区别
Jun 22 PHP
php读取csv文件后,uft8 bom导致在页面上显示出现问题的解决方法
Aug 10 PHP
你不知道的文件上传漏洞php代码分析
Sep 29 PHP
PHP接口并发测试的方法(推荐)
Dec 15 PHP
PHP批量删除jQuery操作
Jul 23 PHP
PHP面向对象五大原则之接口隔离原则(ISP)详解
Apr 04 PHP
laravel 实现设置时区的简单方法
Oct 10 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
2.PHP入门
2006/10/09 PHP
PHP中实现汉字转区位码应用源码实例解析
2010/06/14 PHP
php中使用exec,system等函数调用系统命令的方法(不建议使用,可导致安全问题)
2012/09/07 PHP
Laravel中使用FormRequest进行表单验证方法及问题汇总
2016/06/19 PHP
PHP实现的链式队列结构示例
2017/09/15 PHP
PHP简单实现二维数组赋值与遍历功能示例
2017/10/19 PHP
PHP实现微信退款的方法示例
2019/03/26 PHP
php 自定义函数实现将数据 以excel 表格形式导出示例
2019/11/13 PHP
jquery 得到当前页面高度和宽度的两个函数
2010/02/21 Javascript
分页栏的web标准实现
2011/11/01 Javascript
Javascript的常规数组和关联数组对比小结
2012/05/24 Javascript
JavaScript匿名函数与委托使用示例
2014/07/22 Javascript
JS实现的竖向折叠菜单代码
2015/10/21 Javascript
nodejs使用http模块发送get与post请求的方法示例
2018/01/08 NodeJs
深入探讨JavaScript的最基本部分之执行上下文
2019/02/12 Javascript
详解ng-alain动态表单SF表单项设置必填和正则校验
2019/06/11 Javascript
小程序和web画三角形实现解析
2019/09/02 Javascript
用JS实现一个简单的打砖块游戏
2019/12/11 Javascript
webpack的 rquire.context用法实现工程自动化的方法
2020/02/07 Javascript
JavaScript文档加载模式以及元素获取
2020/07/28 Javascript
Django之创建引擎索引报错及解决详解
2019/07/17 Python
用python解压分析jar包实例
2020/01/16 Python
python GUI库图形界面开发之PyQt5日期时间控件QDateTimeEdit详细使用方法与实例
2020/02/27 Python
快速解决jupyter启动卡死的问题
2020/04/10 Python
Python实现汇率转换操作
2020/05/03 Python
Opencv 图片的OCR识别的实战示例
2021/03/02 Python
CSS3 :not()选择器实现最后一行li去除某种css样式
2016/10/19 HTML / CSS
Canvas 文本转粒子效果的实现代码
2019/02/14 HTML / CSS
HTML5之SVG 2D入门2—图形绘制(基本形状)介绍及使用
2013/01/30 HTML / CSS
Oroton中国官网:澳洲知名奢侈配饰品牌
2017/03/26 全球购物
美国室内盆栽植物购买网站:Plants.com
2020/04/24 全球购物
投资入股合作协议书
2014/10/28 职场文书
2014年学校团委工作总结
2014/12/20 职场文书
可怜妈妈观后感
2015/06/09 职场文书
MySQL RC事务隔离的实现
2022/03/31 MySQL
Java实现添加条码或二维码到Word文档
2022/06/01 Java/Android