将PHP序列化从PHP 5.3迁移到PHP 5.6

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了将PHP序列化从PHP 5.3迁移到PHP 5.6脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个复杂的结构,使用sericalize()函数保存在 MySQL数据库中,然后使用unserialize()转换回来.将系统从 PHP 5.3迁移到 PHP 5.6并在5.6中反序列化在5.3上序列化的数据后,结构已损坏.对象的某些引用现在显示为数组.

我的问题是:

>是否有关于不同PHP版本中序列化/反序列化使用的不同编码的规范? (在我的GOOGLE搜索PHP.net上的文档中找不到任何具体的内容)
>如何将序列化数据从PHP 5.3编码转换PHP 5.6编码?

是的,在PHP5.6中更改了对象的序列化.具体而言,与PHP5.6相关的许多与对象序列化相关的领域都有所不同

在@L_512_16@中有一个含糊的提示

然而,看看错误列表显示report 68099还有更多内容.它还声明原始格式没有官方文档:

请注意,该讨论的最终结果是“无法修复”.

所以基本上,你的选择是:

>尝试使用其他序列化程序之一作为在PHP版本之间导出数据的方法.如session_encode也可以处理对象.
>转换脚本.有一个广泛记录的版本
PHP internals上的当前格式,您可以使用它旧格式上的迭代器更新语法.

脚本宝典总结

以上是脚本宝典为你收集整理的将PHP序列化从PHP 5.3迁移到PHP 5.6全部内容,希望文章能够帮你解决将PHP序列化从PHP 5.3迁移到PHP 5.6所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。