浅谈php函数serialize()与unserialize()的使用方法


Posted in PHP onAugust 19, 2014

php函数serialize():

这个函数作用就是序列化数据,返回一个可存储的字符串,该函数有利于存储或传递PHP的值,同时不丢失其类型和结构。所以我们在cms数据库里面经常看到这样的结构。

一般,我们将复杂或者数据量多而没有必要分开存储的数据封装成一个多维数组通过serialize()转成字符串,然后存进数据库,需要的时候再拿出来转成数组再用,而拿出了转成数组用的就是php的unserialize(),前面多了一个un嘛。直接上例子:
 

$a=array("周","满","和","个人","博客","3water.com","周满和","个人博客");
$b=serialize($a);
print_r($b);
echo "<br/>";
$c=unserialize($b);
print_r($c);

输出结果是:

//经过serialize序列化之后得到的数据,也是存这个进数据库
a:8:{i:0;s:3:"周";i:1;s:3:"满";i:2;s:3:"和";i:3;s:6:"个人";i:4;s:6:"博客";i:5;s:20:"3water.com";i:6;s:9:"周满和";i:7;s:12:"个人博客";}
 
//经过unserialize()反序列化得到的数据,和之前的$a数组结构一样吧
Array ( [0] => 周 [1] => 满 [2] => 和 [3] => 个人 [4] => 博客 [5] => 3water.com [6] => 周满和 [7] => 个人博客 )

在上一个复杂一点的二维数组的例子:
 

$a1=array(
  'name'=>array("周","满",'和'),
  'name_weburl'=>array("周满和","3water.com"),
  'all'=>array('周满和个人博客'=>'3water.com')
);
$b1=serialize($a1);
print_r($b1);
echo "<br/>";
$c1=unserialize($b1); 
print_r($c1);

输出结果是:

//经过serialize序列化之后得到的数据,也是存这个进数据库
a:3:{s:4:"name";a:3:{i:0;s:3:"周";i:1;s:3:"满";i:2;s:3:"和";}s:11:"name_weburl";a:2:{i:0;s:9:"周满和";i:1;s:20:"3water.com";}s:3:"all";a:1:{s:21:"周满和个人博客";s:20:"3water.com";}}
 
//经过unserialize()反序列化得到的数据,和之前的$a数组结构一样吧
Array ( [name] => Array ( [0] => 周 [1] => 满 [2] => 和 ) [name_weburl] => Array ( [0] => 周满和 [1] => 3water.com ) [all] => Array ( [周满和个人博客] => 3water.com ) )
PHP 相关文章推荐
PHP 页面跳转到另一个页面的多种方法方法总结
Jul 07 PHP
PHP Session变量不能传送到下一页的解决方法
Nov 27 PHP
PHP 编写大型网站问题集
May 07 PHP
PHP IF ELSE简化/三元一次式的使用
Aug 22 PHP
php处理文件的小例子(解压缩,删除目录)
Feb 03 PHP
php遍历目录与文件夹的多种方法详解
Nov 14 PHP
php cookie名使用点号(句号)会被转换
Oct 23 PHP
PHP中使用register_shutdown_function函数截获fatal error示例
Apr 21 PHP
分享PHP函数实现数字与文字分页代码
Jul 28 PHP
php函数连续调用实例分析
Jul 30 PHP
PHP解压tar.gz格式文件的方法
Feb 14 PHP
PHP count_chars()函数讲解
Feb 14 PHP
PHP将回调函数作用到给定数组单元的方法
Aug 19 #PHP
php实现文件下载代码分享
Aug 19 #PHP
PHP中array_map与array_column之间的关系分析
Aug 19 #PHP
phpword插件导出word文件时中文乱码问题处理方案
Aug 19 #PHP
PHP防止表单重复提交的几种常用方法汇总
Aug 19 #PHP
PHP中单引号与双引号的区别分析
Aug 19 #PHP
php版本的cron定时任务执行器使用实例
Aug 19 #PHP
You might like
日本收入最高的漫画家:海贼王作者版税年收入高达8.45亿元
2020/03/04 日漫
发布一个用PHP fsockopen写的HTTP下载的类
2007/02/22 PHP
可以在线执行PHP代码包装修正版
2008/03/15 PHP
php 正则表达式小结
2009/08/31 PHP
TP5(thinkPHP5)框架基于ajax与后台数据交互操作简单示例
2018/09/03 PHP
js 跨域和ajax 跨域问题小结
2009/07/01 Javascript
添加JavaScript重载函数的辅助方法2
2010/07/04 Javascript
实现点击列表弹出列表索引的两种方式
2013/03/08 Javascript
在新窗口打开超链接的方法小结
2013/04/14 Javascript
Javascript 中创建自定义对象的方法汇总
2014/12/04 Javascript
jquery+css实现绚丽的横向二级下拉菜单-附源码下载
2015/08/23 Javascript
谷歌showModalDialog()方法不兼容出现对话窗口的解决办法
2016/02/15 Javascript
利用JavaScript实现拖拽改变元素大小
2016/12/14 Javascript
jQuery树插件zTree使用方法详解
2017/05/02 jQuery
vue devtools的安装与使用教程
2018/08/08 Javascript
JavaScript怎样在删除前添加确认弹出框?
2019/05/27 Javascript
使用Phantomjs和Node完成网页的截屏快照的方法
2019/07/16 Javascript
Kettle中使用JavaScrip调用jar包对文件内容进行MD5加密的操作方法
2020/09/04 Javascript
详解Vue3 Teleport 的实践及原理
2020/12/02 Vue.js
python self,cls,decorator的理解
2009/07/13 Python
python实现连连看辅助之图像识别延伸
2019/07/17 Python
Python的bit_length函数来二进制的位数方法
2019/08/27 Python
Pytorch .pth权重文件的使用解析
2020/02/14 Python
使用python执行shell脚本 并动态传参 及subprocess的使用详解
2020/03/06 Python
python爬虫可以爬什么
2020/06/16 Python
django 将自带的数据库sqlite3改成mysql实例
2020/07/09 Python
用python批量移动文件
2021/01/14 Python
戴尔新加坡官网:Dell Singapore
2020/12/13 全球购物
大学生求职简历的自我评价范文
2013/10/12 职场文书
护理专业毕业生自荐信范文
2014/01/05 职场文书
2015年幼儿园毕业感言
2014/02/12 职场文书
员工工作及收入证明
2014/10/28 职场文书
模范教师事迹材料
2014/12/16 职场文书
2015年公司行政后勤工作总结
2015/05/20 职场文书
教师廉政准则心得体会
2016/01/20 职场文书
Python 如何利用ffmpeg 处理视频素材
2021/11/27 Python