这篇文章主要介绍了php中串行化用法,结合实例形式分析了php使用serialize与unserialize函数实现串行化与反串行化操作的相关技巧,需要的朋友可以参考下
功能:串行化用于对对象的存储或者传输,通过反串行化得到这个对象。
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免费学习笔记(深入)”;
<?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就是之前那个串行化的对象,一样用,但是里面的值被我改了以上就是本文的全部内容,希望对大家的学习有所帮助。
相关推荐:
thinkPHP5框架数据库连贯操作:cache()用法详情
以上就是PHP中串行化用法的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号