unserialize() 反序列化报错,疑似乱码解决 阿星小栈

用serialize()序列化数据后插入数据库,再用unserialize()反序列化出来的时候遇到了部分数据字符串报错;

解决方法:

function mb_unserialize($serial_str) {
            
            $out = preg_replace('!s:(d+):"(.*?)";!se', "'s:'.strlen('$2').':"$2";'", $serial_str );
            
            return unserialize($out);
        }

原文地址:https://www.cnblogs.com/dereckbu/p/7279873.html