Computer >> 컴퓨터 >  >> 프로그램 작성 >> PHP

PHP 세션에 객체 저장

<시간/>

PHP의 serialize() 함수는 객체를 저장하기 전에 사용할 수 있으며, unserialize() 함수는 세션에서 객체를 검색해야 할 때 호출할 수 있습니다.

이 함수는 특정 값의 저장 가능한 표현을 비트 시퀀스로 변환합니다. 이는 데이터를 파일, 메모리 버퍼에 저장하거나 네트워크를 통해 전송할 수 있도록 하기 위한 것입니다.

직렬화 기능을 사용하여 객체 저장 -

session_start();
$object = new sample_object();
$_SESSION['sample'] = serialize($object);

session_start 함수를 사용하여 세션을 시작하고 새로운 객체를 생성합니다. 생성된 객체는 'serialize' 함수를 사용하여 직렬화되어 _SESSION 변수에 할당됩니다.

예시

<?php
$data = serialize(array("abc", "defgh", "ijkxyz"));
   echo $data;
?>

출력

이것은 다음과 같은 출력을 생성합니다 -

a:3:{i:0;s:3:"abc";i:1;s:5:"defgh";i:2;s:6:"ijkxyz";}

직렬화 해제 기능을 사용하여 객체 검색 -

session_start();
$object = unserialize($_SESSION['sample']);

평소와 같이 'session_start' 함수를 사용하여 세션을 시작하고 _SESSION 변수에 할당하여 직렬화한 이전에 생성된 객체를 'unserialize' 함수를 사용하여 직렬화 해제합니다 -

예시

<?php
$data = serialize(array("abc", "defgh", "ijkxuz"));
echo $data . "<br>";
$test = unserialize($data);
var_dump($test);
?>

출력

이것은 다음과 같은 출력을 생성합니다 -

a:3:{i:0;s:3:"abc";i:1;s:5:"defgh";i:2;s:6:"ijkxuz";}
array(3) { [0]=> string(3) "abc" [1]=> string(5) "defgh" [2]=> string(6) "ijkxuz" }