php序列化函数的区别
内容导读
收集整理的这篇技术教程文章主要介绍了php序列化函数的区别,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1810字,纯文字阅读大概需要3分钟。
内容图文
serialize() //把变量和它们的值编码成文本形式,即产生一个可存储的值的表示
详解:
serialize()
返回字符串,此字符串包含了表示 value 的字节流,可以存储于任何地方。这有利于存储或传递 PHP 的值,同时不丢失其类型和结构。
unserialize() //恢复原先变量。
详解:
unserialize()
对单一的已序列化的变量进行操作,将其转换回 PHP 的值。如果传递的字符串不可解序列化,则返回 FALSE,并产生一个 E_NOTICE
。
$arr=array();$arr['name']='张三';$arr['age']='22';$arr['sex']='男';$arr['phone']='123456789';$arr['address']='上海市浦东新区';var_dump($arr);//输出:// array(5) { // ["name"]=> string(6) "张三"// ["age"]=> string(2) "22"// ["sex"]=> string(3) "男"// ["phone"]=> string(9) "123456789"// ["address"]=> string(21) "上海市浦东新区"// }//序列化:$info=serialize($arr);var_dump($info);//输出://string(140) "a:5:{s:4:"name";s:6:"张三";s:3:"age";s:2:"22";s:3:"sex";s:3:"男";s:5:"phone";s:9:"123456789";s:7:"address";s:21:"上海市浦东新区";}" ////////////////////////说明///////////////////////////////////**a:5标志序列化为array包含5个键值对,s:4标志内容为字符串包含4个字符。**//$zhangsan=unserialize($info);var_dump($zhangsan);//输出:// array(5) { // ["name"]=> string(6) "张三"// ["age"]=> string(2) "22"// ["sex"]=> string(3) "男"// ["phone"]=> string(9) "123456789"// ["address"]=> string(21) "上海市浦东新区"// }
想要将已序列化的字符串变回PHP的值,可使用 unserialize()。serialize() 可处理除了 resource 之外的任何类型。甚至可以 serialize() 那些包含了指向其自身引用的数组。你正 serialize() 的数组/对象中的引用也将被存储。
当序列化对象时,PHP 将试图在序列动作之前调用该对象的成员函数 __sleep()。这样就允许对象在被序列化之前做任何清除操作。类似的,当使用 unserialize() 恢复对象时, 将调用 __wakeup() 成员函数。
以上内容仅供参考!
推荐教程:PHP视频教程
以上就是php序列化函数的区别的详细内容,更多请关注Gxl网其它相关文章!
内容总结
以上是为您收集整理的php序列化函数的区别全部内容,希望文章能够帮你解决php序列化函数的区别所遇到的程序开发问题。 如果觉得技术教程内容还不错,欢迎将网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
希望以上内容对你有所帮助!如果还有其他问题,请随时提问。 各类知识收集 拥有多年CMS企业建站经验,对 lecms, classcms, fastadmin, pbootcms, phpcms, eyoucms, yzmcms, PHP, xunruicms, jizhicms, dedecms, wordpress, hkcms, yzncms, 等各类cms的相互转化,程序开发,网站制作,bug修复,程序杀毒,插件定制都可以提供最佳解决方案。