详解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)";
?>

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

相关文章

  • Yii框架组件和事件行为管理详解

    Yii框架组件和事件行为管理详解

    这篇文章主要介绍了Yii框架组件和事件行为管理,详细分析了Yii框架组件管理与行为管理的原理与使用技巧,需要的朋友可以参考下
    2016-05-05
  • php微信公众平台示例代码分析(二)

    php微信公众平台示例代码分析(二)

    这篇文章主要为大家详细介绍了php微信公众平台示例代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-12-12
  • Zend Framework教程之Application和Bootstrap用法详解

    Zend Framework教程之Application和Bootstrap用法详解

    这篇文章主要介绍了Zend Framework教程之Application和Bootstrap用法,结合实例形式详细分析了Application和Bootstrap的功能,使用技巧与相关注意事项,需要的朋友可以参考下
    2016-03-03
  • PHP模板引擎Smarty内置变量调解器用法详解

    PHP模板引擎Smarty内置变量调解器用法详解

    这篇文章主要介绍了PHP模板引擎Smarty内置变量调解器用法,结合实例形式详细分析了Smarty中的常用内置变量调节器定义与使用技巧,需要的朋友可以参考下
    2016-04-04
  • PHP内置函数生成随机数实例

    PHP内置函数生成随机数实例

    在本篇文章里小编给大家分享了关于PHP内置函数生成随机数实例内容,对此有兴趣的朋友们可以学习下。
    2019-01-01
  • laravel使用Faker数据填充的实现方法

    laravel使用Faker数据填充的实现方法

    这篇文章主要给大家介绍了关于laravel使用Faker数据填充的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用laravel具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-04-04
  • PHP扩展CURL的用法详解

    PHP扩展CURL的用法详解

    CURL是利用URL语法爱命令行方式下工作的文件传输工具。它支持很多协议。它支持认证功能。php中常用都实现更复杂的传输功能。
    2014-06-06
  • ubuntu12.04使用c编写php扩展模块教程分享

    ubuntu12.04使用c编写php扩展模块教程分享

    php语言自带了很多的扩展模块,诸如mbstring、gd、pdo等等。有时为了提高效率,需要用C实现其中的一些功能,就可以自行编写php的扩展模块
    2013-12-12
  • CI框架中集成CKEditor编辑器的教程

    CI框架中集成CKEditor编辑器的教程

    CKEditor是在很多开发过程中都会用到的一个富文本编辑器,那么如何在CI框架中使用它呢?这里介绍了在CI下使用CKEditor的方法,版本比较低,是在CI 1.7.3下使用fckeditor 2.6.6。供大家参考。
    2014-06-06
  • PHP使用GIFEncoder类处理gif图片实例

    PHP使用GIFEncoder类处理gif图片实例

    这篇文章主要介绍了PHP使用GIFEncoder类处理gif图片实例,包含解码GIF图片、处理后再次生成GIF图片例子,需要的朋友可以参考下
    2014-07-07

最新评论