php序列化函数serialize() 和 unserialize() 与原生函数对比
发布:smiling 来源: PHP粉丝网 添加日期:2021-05-25 15:41:41 浏览: 评论:0
这篇文章主要介绍了php序列化函数serialize() 和 unserialize() 与php原生序列化方法对比,有需要的小伙伴可以参考下。
php中有格式化字符串并转换成数组或对象的好方法,即序列化处理。
有两种序列化变量的方法。
以下示例,使用 serialize() 和 unserialize() 函数:
- // a complex array
- $myvar = array(
- 'hello',
- 42,
- array(1,'two'),
- 'apple'
- );
- // convert to a string
- $string = serialize($myvar);
- echo $string;
- /* prints
- a:4:{i:0;s:5:"hello";i:1;i:42;i:2;a:2:{i:0;i:1;i:1;s:3:"two";}i:3;s:5:"apple";}
- */
- // you can reproduce the original variable
- $newvar = unserialize($string);
- print_r($newvar);
- /* prints
- Array
- (
- [0] => hello
- [1] => 42
- [2] => Array
- (
- [0] => 1
- [1] => two
- )
- [3] => apple
- )
- */
这是原生的 PHP 序列化方法。
然而,由于 JSON 近年来大受欢迎,PHP5.2 中已经加入了对 JSON 格式的支持。
现在你可以使用 json_encode() 和 json_decode() 函数:
- // a complex array
- $myvar = array(
- 'hello',
- 42,
- array(1,'two'),
- 'apple'
- );
- // convert to a string
- $string = json_encode($myvar);
- echo $string;
- /* prints
- ["hello",42,[1,"two"],"apple"]
- */
- // you can reproduce the original variable
- $newvar = json_decode($string);
- print_r($newvar);
- /* prints
- Array
- (
- [0] => hello
- [1] => 42
- [2] => Array
- (
- [0] => 1
- [1] => two
- )
- [3] => apple
- )
- */
这将更为行之有效,尤其与 JavaScript 等许多其他语言兼容。
注意:对于复杂的对象,某些信息可能会丢失。
Tags: serialize unserialize
相关文章
- ·php serialize与unserialize语法(2014-05-26)
- ·php中serialize()与unserialize()函数使用方法(2014-09-12)
- ·浅谈php函数serialize()与unserialize()的使用方法(2021-04-06)
- ·php函数serialize()与unserialize()用法实例(2021-04-24)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)