php如何反序列化数组和对象

醉折花枝作酒筹
发布: 2021-08-06 10:33:22
原创
2973人浏览过

上一篇文章我们了解了序列化对象或数组的方法,有需要的请看《php如何序列化数组和对象》。这次我们向大家介绍反序列化对象或数组的方法,有需要的可以参考参考。

我们开始本篇文章之前,我们先了解一下什么是反序列化。

反序列化就是把字节流(二进制串)恢复为数组和对象的过程。

我们了解了反序列化的含义之后,我们就很容易明白这篇文章需要干什么了。我们需要将上一篇已经序列化的对象和数组还原回来。

先来看一个小例子,就是将上篇序列化的数组给还原回来。

立即学习PHP免费学习笔记(深入)”;

上篇文章的例子是

<?php    
$sites = array('Google', '360', 'Facebook');    
$serialized_data = serialize($sites);    
echo  $serialized_data . PHP_EOL;  
?>
登录后复制

结果是

[H})%Q$DK$}4GO8_2X]CDQH.png

那我们就将这个字节流还原成数组。

<?php
$str = 'a:3:{i:0;s:6:"Google";i:1;s:3:"360";i:2;s:8:"Facebook";}';
$unserialized_data = unserialize($str);
print_r($unserialized_data);
?>
登录后复制

还原的结果是

)Z$5JK}[0KHZ(363D2U(2}3.png

好啦,我们这就将结果还原啦。我们细细解读一下,这么长的一串字符经过一个函数,就变成的一个数组。虽然我们不知道这一长串经过了什么?它是如何从一长串数字与字母的组合变成我们熟悉的数组的。

但是我们可以去学习一下这个函数啊。

unserialize() 函数用于将通过 serialize() 函数序列化后的对象或数组进行反序列化,并返回原始的对象结构。

那我们来看一下这个函数的语法结构吧。

mixed unserialize (需要进行反序列化操作的字符串)
登录后复制

需要注意的是这个函数的返回值,我们好好来看一下。

这个函数返回的是转换之后的值,可为integer、float、string、array或object。如果传递的字符串不可解序列化,则返回FALSE,并产生一个E_NOTICE。

就说到这里了,有其他想知道的,可以点击这个哦。→ →php视频教程

以上就是php如何反序列化数组和对象的详细内容,更多请关注php中文网其它相关文章!

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号