> 백엔드 개발 > PHP 튜토리얼 > PHP 직렬화 사용법 요약(코드 예)

PHP 직렬화 사용법 요약(코드 예)

不言
풀어 주다: 2023-04-04 18:42:02
원래의
4819명이 탐색했습니다.

직렬화는 배열 등을 배열로 저장할 수도 있습니다. 또한 이메일을 주고받는 데에도 사용할 수 있습니다. 이 글에서는 PHP 직렬화의 내용을 소개하겠습니다.

PHP 직렬화 사용법 요약(코드 예)

데이터베이스에 배열을 저장할 때 일반적으로 어떤 일이 발생하나요?

다음 배열을 데이터베이스에 등록해 보세요.

["student1", "student2", "student3"]
로그인 후 복사

그런 다음 다시 가져오십시오.

'Array("student1", "student2", "student3")'
로그인 후 복사

우리가 얻는 것은 문자열입니다. 직렬화 없이 데이터베이스에 등록한 후 다시 검색하면 문자열이 됩니다.

foreach 문을 사용하여 이 문자열을 얻는 것은 불가능합니다.

배열은 데이터베이스에 배열로 등록한 후 직렬화를 사용해야 합니다.

직렬화를사용하자

직렬화하려면 직렬화 함수를 사용해야 합니다

또한 결과는 직렬화할 데이터 유형에 따라 달라집니다.

직렬화된 배열

로그인 후 복사

실행 결과는

a:3:{i:0;s:8:"student1";i:1;s:8:"student2";i:2;s:8:"student3";}
로그인 후 복사

초기 [a:3] 부분이 [type:value]로 표시되어 있으니 참고하세요.

은 배열 유형이 a임을 나타냅니다.

또한 후속 디스플레이는 [key; value;]로 표시되는 배열 데이터 부분입니다.

직렬화된 정수

<?php
$test = 50;
$disp = serialize($test);
echo $disp;
로그인 후 복사

결과는

i:50;
로그인 후 복사

직렬화된 문자열

<?php
$test = &#39;student&#39;;
$disp = serialize($test);
echo $disp;
로그인 후 복사

결과는

입니다.
s:7:"student";
로그인 후 복사

문자열 유형이 s임을 나타냅니다.

문자열의 경우 숫자도 있지만 이는 문자 수를 나타냅니다.

직렬화가 쉽습니다.

그런 다음 직렬화된 데이터를 보내거나 데이터베이스에 저장하세요.

직렬화 해제로 역직렬화

직렬화된 데이터를 사용하려면 그대로 사용할 수 없습니다.

원래 유형과 구조를 복원하려면 직렬화 해제를 사용해야 합니다.

배열 역직렬화

";
echo print_r(unserialize($disp));
로그인 후 복사

직렬화된 $disp는 명확성을 위해 개행 문자 세트(
)와 함께 표시됩니다.

또한 $disp가 역직렬화되어 표시됩니다.

print_r은 배열의 내용을 표시하는 데 사용됩니다.

결과는

a:3:{i:0;s:8:"student1";i:1;s:8:"student2";i:2;s:8:"student3";}
Array ( [0] => student1 [1] => student2 [2] => student3 )1
로그인 후 복사

첫 번째 줄은 직렬화 결과이고, 두 번째 줄은 역직렬화 결과입니다.

정수를 역직렬화하면

<?php
$test = 50;
$disp = serialize($test);
echo $disp;
echo "
"; echo unserialize($disp);
로그인 후 복사

결과는

i:50;
50
로그인 후 복사

문자열을 역직렬화하면

<?php
$test = &#39;student&#39;;
$disp = serialize($test);
echo $disp;
echo "
"; echo unserialize($disp);
로그인 후 복사

결과는

s:7:"student";
student
로그인 후 복사

직렬화된 데이터를 복구하는 것은 쉽습니다.

위 내용은 PHP 직렬화 사용법 요약(코드 예)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿