PHP中串行化用法示例
作者:shyhero
这篇文章主要介绍了PHP中串行化用法,结合实例形式分析了php使用serialize与unserialize函数实现串行化与反串行化操作的相关技巧,需要的朋友可以参考下
本文实例讲述了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字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《PHP网络编程技巧总结》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。