详解PHP中的序列化、反序列化操作
更新时间:2017年03月21日 09:26:07 作者:kangyiii
本篇文章主要介绍了PHP中的序列化、反序列化操作,可以将一个变量的数据"转换为"字符串,目的是将该字符串存储在本地。相反的行为成为反序列化。
数据(变量)序列化(持久化)
将一个变量的数据"转换为"字符串,但并不是类型转换,目的是将该字符串存储在本地。相反的行为成为反序列化。
流程:
//序列化 $str = serialize($r1); //保存到本地 file_put_contents("文本文件路径",$str); //从本地取出 $str2 = file_get_contents("文本文件路径"); //反序列化为之前的对象 $v1 = unserialize($str2);
具体实例:
1.在xxx1.php中进行序列化操作
<?php $v1 = 1; $v2 = 'abc'; $v3 = array('a'=>1,'bb'=>2.2,'awd',true); $str1 = serialize($v1); $str2 = serialize($v2); $str3 = serialize($v3); //写入文本文件 file_put_contents('./a1.txt', $str1); file_put_contents('./a2.txt', $str2); file_put_contents('./a3.txt', $str3); ?>
2.在xxx2.php中进行反序列化操作
<?php $s1 = file_get_contents('./a1.txt'); $s2 = file_get_contents('./a2.txt'); $s3 = file_get_contents('./a3.txt'); $var1 = unserialize($s1); $var2 = unserialize($s2); $var3 = unserialize($s3); echo "<br/>var_dump($var1,$var2,$var3)"; ?>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
Laravel学习笔记之Artisan命令生成自定义模板的方法
这篇文章主要介绍了Laravel学习笔记之Artisan命令生成自定义模板的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2018-11-11PHP CURL或file_get_contents获取网页标题的代码及两者效率的稳定性问题
PHP CURL与file_get_contents函数都可以获取远程服务器上的文件保存到本地,但在性能上面两者完全不在同一个级别,下面通过一个例子给大家介绍PHP CURL或file_get_contents获取网页标题的代码及两者效率的稳定性问题,需要的朋友参考下2015-11-11配置Apache2.2+PHP5+CakePHP1.2+MySQL5运行环境
因为最近要用PHP做个小东西,新学了PHP。结果学PHP只用了2个小时,配置服务器却用了两天,郁闷得想骂人。为了避免以后忘掉,写个博客留底。2009-04-04
最新评论