>백엔드 개발 >PHP 튜토리얼 >PHP unserialize mfc serialize serialize jquery serialize에서 오프셋 오류 발생

PHP unserialize mfc serialize serialize jquery serialize에서 오프셋 오류 발생

WBOY
WBOY원래의
2016-07-29 08:54:551303검색

  1. php
  2. //내 페이지가 UTF-8로 인코딩된 결과는 다음과 같습니다. 2:{s:2:"en";s:21:"http://www.phpddt.com";s:2:"cn";s:6:"tutorial";}
  3. //내 페이지는 ANSI로 인코딩되었으며 결과는 다음과 같습니다: a:2:{s:2:"en";s:21:"http://www.phpddt.com";s:2 :"cn";s:4:"tutorial";}
  4. 에코 직렬화(배열('en'=>'http://www.phpddt.com','cn' =>'튜토리얼'));

위에서 보면 쉽게 알 수 있듯이 페이지의 인코딩이 다르고, 직렬화된 중국어 문자열의 길이도 다르며, 직렬화 해제 시 문자열의 길이가 실제 문자열 길이보다 커지면 문제가 발생합니다. , 다음 오류가 보고됩니다.
주의: unserialize() [function.unserialize]: Error at offset
해결책은 역직렬화된 함수를 변환해야 한다는 것입니다. 문자열:

  1. 함수 _unserialize( $ 문자열)
  2. {
  3. 반환 직렬화 해제(preg_replace('!s:(d+):"(.*?)";!se' , '"s:".strlen("$2").":"$2";"', $string) );
  4. }

재인쇄 출처: http://www.phpddt.com/php/unserialize-error-at-offset.html

위 내용은 직렬화 내용을 포함하여 PHP unserialize의 오프셋 오류에 대해 소개합니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.