首页后端开发PHPPHP怎样实现序列化,用什么函数

PHP怎样实现序列化,用什么函数

时间2024-03-24 22:48:03发布访客分类PHP浏览1420
导读:这篇文章给大家介绍了“PHP怎样实现序列化,用什么函数”的相关知识,讲解详细,步骤过程清晰,对大家进一步学习和理解“PHP怎样实现序列化,用什么函数”有一定的帮助,希望大家阅读完这篇文章能有所收获。下面就请大家跟着小编的思路一起来学习一下吧...
这篇文章给大家介绍了“PHP怎样实现序列化,用什么函数”的相关知识,讲解详细,步骤过程清晰,对大家进一步学习和理解“PHP怎样实现序列化,用什么函数”有一定的帮助,希望大家阅读完这篇文章能有所收获。下面就请大家跟着小编的思路一起来学习一下吧。


php能实现序列化。在php中,可以利用serialize()函数实现序列化,将值转换为一个可以存储的字符串,语法“serialize(要序列化的变量)”;还可使用unserialize()函数实现反序列化,重新把字符串变回PHP原来的值。

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

所谓序列化,就是将一个在内存中的变量转换为可保存或传输的字符串的过程。而反序列化就是在适当的时候把这个字符串再转化成原来的变量使用。这两个过程结合起来可以轻松的完成数据的存储和传输操作,使得程序更具维护性。

php也能实现序列化。

在php中,可以利用serialize() 函数实现序列化,将值转换为一个可以存储的字符串;还可使用unserialize() 函数能够重新把字符串变回 PHP 原来的值,也就是反序列化。

serialize() 函数的语法格式如下:

serialize(mixed $value)

其中 $value 就是要序列化的变量。

serialize() 函数可以处理除了 resource(资源)之外的任何类型。当序列化对象时,PHP 会在序列动作之前调用该对象的 __sleep() 成员函数。这样就允许对象在被序列化之前做任何清除操作。类似的,当使用 unserialize() 反序列化对象时,将调用 __wakeup() 成员函数。

【示例】使用 serialize() 函数序列化一个对象。

name = $name;
    
        $this->
    url  = $url;

    }

}
    
$websit  = new WebSit('php中文网', 'https://www.php.cn/');
    
$ser_str = serialize($websit);
    
echo $ser_str;
    
?>
    

扩展知识:反序列化

当使用 serialize() 函数将对象序列化后,可以将这个得到的字符串保存到文件或者数据库中,然后在需要的地方使用 unserialize() 函数将这个字符串反序列化,unserialize() 函数的语法格式如下:

unserialize(string $str)

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

【示例】反序列化上面得到的字符串。

name = $name;
    
        $this->
    url  = $url;

    }

}

$str = 'O:6:"WebSit":2:{
    s:4:"name";
    s:12:"php中文网";
    s:3:"url";
    s:19:"https://www.php.cn/";
}
    ';
    
$websit = unserialize($str);
    
var_dump($websit);
    
?>
    


通过以上内容的阐述,相信大家对“PHP怎样实现序列化,用什么函数”已经有了进一步的了解,更多相关的问题,欢迎关注网络或到官网咨询客服。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: PHP怎样实现序列化,用什么函数
本文地址: https://pptw.com/jishu/652369.html
oracle查询日期范围怎样做?有什么方式? Spring事务失效的情况都有哪些呢?

游客 回复需填写必要信息