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);
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM