Функции за променливи
PHP Manual

serialize

(PHP 4, PHP 5)

serializeГенерира удобно за съхранение представяне на стойност

Описание

string serialize ( mixed $value )

Генерира удобно за съхранение представяне на стойност

Това е полезно при съхранение или предаване на PHP стойности без да се губят тяхната структура и вид.

За да върнете сериализиран низ обратно към PHP стойност, използвайте функцията unserialize().

Параметри

value

Стойността, която ще бъде сериализирана. Функцията serialize() поддържа всички типове, освен resource. Можете дори да прилагате serialize() върху масиви, съдържащи референции към самите тях. Цикличните зависимости в масива/обекта, които сериализирате посредством serialize() също ще бъдат съхранени. Всички останали референции ще бъдат загубени.

При сериализиране на обекти PHP ще се опита да извика метода __sleep() преди сериализацията. Това се прави, за да се даде възможност на обекта да извърши финални действия. По същия начин, когато обектът се възстановява посредством функцията unserialize(), се извиква метода __wakeup.

Връщани стойности

Връща низ, съдържащ byte-stream представяне на стойността value , което може да се съхрани навсякъде.

Примери

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), $_SERVER['PHP_AUTH_USER']);
if (!
odbc_execute($stmt, &$sqldata)) {
    
$stmt odbc_prepare($conn,
     
"INSERT INTO sessions (id, data) VALUES(?, ?)");
    if (!
odbc_execute($stmt, &$sqldata)) {
        
/* Нещо се обърка.. */
    
}
}
?>

Дневник на промените

Версия Описание
4.0.7 Процесът на сериализиране на обект бе поправен.
4.0.0 При сериализиране методите вече не се губят. Моля прегледайте Сериализиране на обекти за повече информация.

Бележки

Забележка: Не е възможно да се сериализират вградени PHP обекти.

Вж. също


Функции за променливи
PHP Manual