(PHP 4, PHP 5)
serialize — Генерира удобно за съхранение представяне на стойност
Генерира удобно за съхранение представяне на стойност
Това е полезно при съхранение или предаване на PHP стойности без да се губят тяхната структура и вид.
За да върнете сериализиран низ обратно към PHP стойност, използвайте функцията unserialize().
Стойността, която ще бъде сериализирана. Функцията 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 обекти.