Forum und email

serialize

(PHP 4, PHP 5, PECL axis2:0.1.0-0.1.1)

serialize — 값의 저장 표현을 생성합니다.

설명

string serialize ( mixed $value )

serialize()는 어디에도 저장할 수 있도록 value 의 바이트 스트림 표현을 포함하는 문자열을 반환합니다.

이는 PHP 값을 저장하거나 전달할 때 형이나 구조를 잃어버리지 않게 합니다.

serialize된 문자열을 다시 PHP 변수로 만들때는, unserialize()를 사용합니다. serialize()resource형을 제외한 모든 형을 다릅니다. 심지어 자기 자신을 참조하는 배열을 serialize()할 수도 있습니다. 배열/객체 안의 참조는 serialize()할 때 저장됩니다.

객체를 일렬화할 때, 일렬화에 앞서 __sleep() 멤버 함수를 호출합니다. 이는 일렬화하기 전에 객체를 마지막으로 정리할 수 있도록 합니다. 비슷하게, unserialize()을 사용하려 객체를 되돌릴 때, __wakeup() 멤버 함수를 호출합니다.

Note: PHP 3에서, 객체 속성은 일렬화되지만, 메쏘드는 잃어버립니다. PHP 4에서는 이런 제한이 사라졌고, 속성과 메쏘드를 둘다 복구합니다. 자세한 정보는 클래스와 객체객체 일렬화하기 섹션을 참고하십시오.

Example#1 serialize() 예제

<?php
// $session_data는 현재 사용자의 세션 정보를 다차원 배열로
// 가집니다. 요청의 마지막에 이것을 데이터베이스에 저장하기
// 위해서 serialize()를 사용합니다.

$conn odbc_connect("webdb""php""chicken");
$stmt odbc_prepare($conn,
      
"UPDATE sessions SET data = ? WHERE id = ?");
$sqldata = array (serialize($session_data), $PHP_AUTH_USER);
if (!
odbc_execute($stmt, &$sqldata)) {
    
$stmt odbc_prepare($conn,
     
"INSERT INTO sessions (id, data) VALUES(?, ?)");
    if (!
odbc_execute($stmt, &$sqldata)) {
        
/* 무언가 잘못되었을때 할 일.. */
    
}
}
?>

참고: unserialize().


?>

참고: unserialize().


변수
PHP Manual