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

在php中serialize()与unserialize()函数是一对函数,下面本文章就来为各位同学介绍serialize()与unserialize()函数的使用例子,希望能帮助到各位。

php函数serialize():

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

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

$a=array("周","满","和","个人","博客","www.jb51.net","周满和","个人博客");

$b=serialize($a);

print_r($b);

echo"
";

$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:"www.jb51.net";i:6;s:9:"周满和";i:7;s:12:"个人博客";}

//经过unserialize()反序列化得到的数据,和之前的$a数组结构一样吧

Array ( [0] => 周 [1] => 满 [2] => 和 [3] => 个人 [4] => 博客 [5] => www.jb51.net [6] => 周满和 [7] => 个人博客 )

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

$a1=array(

'name'=>array("周","满",'和'),

'name_weburl'=>array("周满和","www.jb51.net"),

'all'=>array('周满和个人博客'=>'www.jb51.net')

);

$b1=serialize($a1);

print_r($b1);

echo"
";

$c1=unserialize($b1);

print_r($c1);


s:20:"www.jb51.net";}s:3:"all";a:1:{s:21:"周满和个人博客";s:20:"www.jb51.net";}}

//经过unserialize()反序列化得到的数据,和之前的$a数组结构一样吧

Array ( [name] => Array ( [0] => 周 [1] => 满 [2] => 和 ) [name_weburl] => Array ( [0] => 周满和 [1] => www.jb51.net ) [all] => Array ( [周满和个人博客] => www.jb51.net ) )

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 背景 一年多以前我在知乎上答了有关LeetCode的问题, 分享了一些自己做题目的经验。 张土汪:刷leetcod...
    土汪阅读 14,354评论 0 33
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,955评论 25 709
  • 在此特此声明:一下所有链接均来自互联网,在此记录下我的查阅学习历程,感谢各位原创作者的无私奉献 ! 技术一点一点积...
    远航的移动开发历程阅读 13,890评论 12 197
  • 回归大自然,对我而言,是一生的向往与追求。我想,很多人都向往大自然,但却没勇气从钢筋混泥土的城市里走出来,亦或...
    九天仙女阅读 2,967评论 0 1
  • 滴滴雨弹去空泛, 思念苍白了一脸。 如那归月惆怅,空旷心里茫然。 彷徨自我深埋欺骗, 欲忘以忘却是无忘。 种子被隐...
    青春被忘路阅读 1,895评论 0 0

友情链接更多精彩内容