unserialize() 反序列化报错,疑似乱码解决 阿星小栈
用serialize()序列化数据后插入数据库,再用unserialize()反序列化出来的时候遇到了部分数据字符串报错;
解决方法:
function mb_unserialize($serial_str) {
$out = preg_replace('!s:(\d+):"(.*?)";!se', "'s:'.strlen('$2').':\"$2\";'", $serial_str );
return unserialize($out);
}