KO
내 도구

PHP 언시리얼라이즈 / 시리얼라이즈 온라인

PHP 직렬화 데이터를 JSON, print_r, var_export, var_dump로 풀어 보고, JSON을 다시 serialize합니다. 검색·치환으로 어긋난 s:N 문자열 길이도 복구합니다.

동작
JSON
값 개수
7
내 도구 →
광고

PHP는 워드프레스 옵션과 글 메타, 세션, 캐시 항목처럼 배열과 객체를 serialize()로 데이터베이스에 저장하며, 형식은 a:1:{s:3:"key";s:5:"value";}와 같습니다. 이 도구는 PHP를 실행하지 않고 이 형식을 읽어 JSON으로, 또는 print_r(), var_export(), var_dump()가 출력하는 그대로 보여 줍니다. JSON을 다시 PHP 형식으로 직렬화할 수도 있고, 데이터베이스에서 검색·치환한 뒤 어긋난 s:N 문자열 길이를 복구할 수도 있습니다.

사용 방법

  1. 워드프레스 옵션 등에서 가져온 직렬화 문자열을 붙여넣습니다.
  2. JSON, print_r, var_export, var_dump 중에서 표시 방식을 고릅니다.
  3. 텍스트를 치환했기 때문에 PHP가 "Error at offset"을 낸다면 "잘못된 문자열 길이 복구"를 켜고, 각 보기를 확인한 뒤 복구된 데이터를 복사합니다(추측입니다).
  4. 반대로 하려면 JSON을 시리얼라이즈를 고르고 JSON을 붙여넣습니다.

계산식

N; null · b:1; 불리언 · i:42; 정수 · d:0.5; 실수 · s:5:"hello"; 문자열(길이는 바이트 단위) · a:2:{…} 배열 · O:8:"stdClass":1:{…} 객체 · r:2; 참조

문자열 길이는 UTF-8 바이트 수라서 "é"는 s:2, 이모지는 s:4입니다. URL이나 텍스트를 데이터베이스에서 직접 치환하면 데이터가 깨지는 대표적인 이유입니다. 복구는 추측입니다. 어긋난 문자열마다 다음 항목이 올바르게 이어지는 첫 번째 ";를 끝으로 보고 길이를 다시 쓰므로, 그런 텍스트가 문자열 안에 들어 있으면 너무 일찍 잘립니다. 항상 결과를 확인하세요. private·protected 속성은 \0클래스\0이름 형태에서 해석합니다. 참조(r:와 R:)는 따라가며, 자신을 포함하는 값으로의 참조는 *RECURSION*으로 표시됩니다. 실수는 PHP 8처럼 print_r에서는 유효숫자 14자리, 그 밖에서는 정확한 최단 표기로 출력합니다.

예시

샘플 a:4:{…}에는 값이 네 개 들어 있습니다. name "Ada Lovelace"(s:12), age 36, langs(안쪽 배열에 "PHP"와 "Python"), active true입니다. 배열 자체와 목록 안의 문자열 두 개까지 세면 7개의 값입니다. JSON으로는 {"name": "Ada Lovelace", "age": 36, "langs": ["PHP", "Python"], "active": true}가 됩니다. 데이터베이스에서 http://를 https://로 바꾸면 s:18:"https://example.com"은 1바이트 모자라고, 복구하면 s:19로 다시 쓰입니다.

자주 묻는 질문

워드프레스 데이터가 검색·치환 뒤에 왜 깨지나요?

각 문자열은 바이트 길이를 함께 저장합니다. http://를 https://로 바꾸면 1바이트가 늘어 길이가 맞지 않게 되고 unserialize()가 실패합니다. WP-CLI search-replace처럼 직렬화를 고려하는 도구를 쓰세요. 여기서의 길이 복구는 이미 깨진 데이터에 대한 추측이므로 결과를 확인하고 백업을 두세요.

신뢰할 수 없는 데이터를 언시리얼라이즈해도 안전한가요?

PHP에서 신뢰할 수 없는 입력에 unserialize()를 쓰면 객체가 만들어지고 코드가 실행될 수 있습니다(객체 주입). 이 도구는 텍스트만 읽고 클래스 코드를 실행하지 않으므로 여기에 붙여넣는 것은 안전합니다.

객체에 "__class"가 보이는 이유는 무엇인가요?

JSON에는 클래스가 없어 클래스 이름을 별도의 "__class" 키에 담습니다. print_r, var_export, var_dump는 PHP처럼 클래스를 표시합니다.

데이터가 업로드되나요?

아닙니다. 모든 작업은 브라우저에서 이뤄집니다.

출처

최종 업데이트:

인용·퍼가기
APA

kakaoCalc. (2026, November 8). PHP 언시리얼라이즈 / 시리얼라이즈 온라인. https://kakao.mobile/ko/tools/php-unserialize-tool/

MLA

“PHP 언시리얼라이즈 / 시리얼라이즈 온라인.” kakaoCalc, 8 Nov. 2026, kakao.mobile/ko/tools/php-unserialize-tool/.

광고