美文网首页PHP实战PHP经验分享
PHP中的序列化、反序列化操作

PHP中的序列化、反序列化操作

作者: kangyiii | 来源:发表于2017-03-20 20:34 被阅读71次

    数据(变量)序列化(持久化)

    将一个变量的数据"转换为"字符串,但并不是类型转换,目的是将该字符串存储在本地。相反的行为成为反序列化。
    流程:

    //序列化
    $str = serialize($r1);
    //保存到本地
    file_put_contents("文本文件路径",$str);
    //从本地取出
    $str2 = file_get_contents("文本文件路径");
    //反序列化为之前的对象
    $v1 = unserialize($str2);
    

    具体实例:
    1.在xxx1.php中进行序列化操作

    <?php
    $v1 = 1;
    $v2 = 'abc';
    $v3 = array('a'=>1,'bb'=>2.2,'awd',true);
    $str1 = serialize($v1);
    $str2 = serialize($v2);
    $str3 = serialize($v3);
    
    //写入文本文件
    file_put_contents('./a1.txt', $str1);
    file_put_contents('./a2.txt', $str2);
    file_put_contents('./a3.txt', $str3);
    ?>
    

    2.在xxx2.php中进行反序列化操作

    <?php
    $s1 = file_get_contents('./a1.txt');
    $s2 = file_get_contents('./a2.txt');
    $s3 = file_get_contents('./a3.txt');
    $var1 = unserialize($s1);
    $var2 = unserialize($s2);
    $var3 = unserialize($s3);
    echo "<br/>var_dump($var1,$var2,$var3)";
    ?>
    

    相关文章

      网友评论

        本文标题:PHP中的序列化、反序列化操作

        本文链接:https://www.haomeiwen.com/subject/lyfrnttx.html