• 技术文章 >后端开发 >PHP问题

    php怎么将序列化数据转为数组

    青灯夜游青灯夜游2022-05-26 18:40:34原创196

    转换方法:1、用“unserialize($str)”还原序列化数据;2、用json_encode()和json_decode()将还原后的数据转为数组类型,语法“json_decode(json_encode(还原数据),TRUE)”。

    本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑

    我们在开发的过程中有时会遇到需要把对象或者数组进行序列化存储,反序列化输出的情况。特别是当需要把数组存储到 MySQL 数据库中时,就需要将数组进行序列化操作。

    所有 PHP 里面的值都可以使用 serialize() 函数将其转换为一个可以存储的字符串,也就是序列化。

    而想要还原序列化数据,可以使用unserialize() 函数;该函数能够重新把字符串变回 PHP 原来的值,也就是反序列化。

    php将序列化数据转为数组的方法

    1、使用unserialize() 函数还原序列化数据

    unserialize($str)

    其中,$str 为使用 serialize() 函数序列化后的字符串。如果传入的字符串不可被反序列化,则会返回 FALSE,并产生一个 E_NOTICE。

    2、将还原后的数据转为数组类型

    使用json_encode函数将对象转换为json数据,再使用json_decode函数将json数据转换为数组。

    <?php
    $obj=serialize((object)array("11","22","33"));
    var_dump($obj);
    $res=unserialize($obj);
    $arr=json_decode(json_encode($res),TRUE);
    var_dump($arr);
    ?>

    1.png

    推荐学习:《PHP视频教程

    以上就是php怎么将序列化数据转为数组的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:php数组 php
    上一篇:php怎么修改数组多个元素值 下一篇:php怎么增加数组的维度
    VIP课程(WEB全栈开发)

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• php数组怎么去掉null值• php数组怎么去掉最大和最小元素• php数组怎么计算乘积和求和• php数组里面可放数组吗• php数组怎么去掉最大值和最小值后求平均
    1/1

    PHP中文网