unserialize反序列化错误的解决办法
Posted 次瓜
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了unserialize反序列化错误的解决办法相关的知识,希望对你有一定的参考价值。
1. UTF-8编码解决反序列化出错问题
function mb_unserialize($serial_str) { $serial_str = str_replace("\r", "", $serial_str); $serial_str = preg_replace(‘!s:(\d+):"(.*?)";!se‘, "‘s:‘.strlen(‘$2‘).‘:\"$2\";‘", $serial_str ); return unserialize($serial_str); }
2.ASC编码解决反序列化出错问题
function asc_unserialize($serial_str) { $serial_str= str_replace("\r", "", $serial_str); $serial_str = preg_replace(‘!s:(\d+):"(.*?)";!se‘, ‘"s:".strlen("$2").":\"$2\";"‘, $serial_str ); return unserialize($serial_str); }
以上是关于unserialize反序列化错误的解决办法的主要内容,如果未能解决你的问题,请参考以下文章
Android Parcelable反序列化报错笔记:java.lang.RuntimeException: Unmarshalling unknown type code at offset(代码片
序列化serialize()与反序列化unserialize()的实例
XCTF-攻防世界CTF平台-Web类——10unserialize3(反序列化漏洞绕过__wakeup()函数)
PHP中Notice: unserialize(): Error at offset of bytes in on line 的解决方法