详解PHP中的序列化、反序列化操作

5年以前  |  阅读数:448 次  |  编程语言: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)";
    ?>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例