首頁  >  文章  >  後端開發  >  PHP 反序列化出現偏移錯誤錯誤 mfc 序列化 可序列化 jquery 序列化

PHP 反序列化出現偏移錯誤錯誤 mfc 序列化 可序列化 jquery 序列化

WBOY
WBOY原創
2016-07-29 08:54:551279瀏覽

  1. php
  2. //我的頁面是UTF-8編碼的結果是:a:2:{s:2:"en";s:21:"http://www .phpddt.com";s:2:"cn";s:6:"教學";}
  3. //我的頁面是ANSI編碼的結果是:a:2:{s:2:"en ";s:21:"http://www.phpddt.com";s:2:"cn";s:4:"教學";}
  4. echo serialize(array((((((((( 'en'=>'http://www.phpddt.com',
  5. 'cn'
=>

'教學'cn'
從上很容易看出頁面的編碼不同,serialize的中文字符串的長度就不同,問題就出來了,如果你unserialize的時候字符串的長度大於實際字符串的長度,會報如下錯誤:
Notice: unserialize() [function.unserialize]: Error at offset 
解決方法是你要對反序列的字串進行一次轉換:

serialize (

  1. $string){return
  2. unserialize:return
  3. unserialize:( (.*?)";! se','"s:".strlen("$2").":"$2";"', $string)); 轉載自: http://www.phpddt.com/php/unserialize-error-at-offset.html
  4. 以上就介紹了PHP unserialize出現Error at offset錯誤,包括了serialize方面的內容,希望對PHP教程有興趣的朋友有所幫助。
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn