Forum und email

serialize

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

serialize — Genera una representación apta para almacenamiento de un valor

Descripción

string serialize ( mixed $valor )

Genera una representación almacenable de un valor

Esto es útil para el almacenamiento de valores en PHP sin perder su tipo y estructura.

Para recuperar el valor PHP a partir de la cadena seriada, use unserialize().

Lista de parámetros

valor

EL valor a ser seriado. serialize() maneja todos los tipos, excepto resource. Usted puede incluso usar serialize() sobre matrices que contienen referencias a ellas mismas. Las referencias circulares encontradas en la matriz/objeto que procede a seriar con serialize() también serán almacenadas. Cualquier otra referencia se perderá.

Cuando seria objetos, PHP intentará llamar la función miembro __sleep() antes de la seriación. Esto permite que el objeto efectúe limpiezas de último minuto, etc. antes de ser seriado. De forma semejante, cuando un objeto es recuperado usando unserialize(), la función miembro __wakeup() es llamada.

Valores retornados

Devuelve una cadena que contiene una representación de flujo de bytes del valor que puede ser almacenada en cualquier parte.

Ejemplos

Example#1 Ejemplo de serialize()

<?php
// $datos_sesion contiene una matriz multi-dimensional con
// información del usuario actual. Usamos serialize() para
// almacenarla en una base de datos al final de la petición.


$con  odbc_connect("bd_web""php""gallina");
$sent odbc_prepare($con,
      
"UPDATE sesiones SET datos = ? WHERE id = ?");
$datos_sql = array (serialize($datos_sesion), $_SERVER['PHP_AUTH_USER']);

if (!
odbc_execute($sent, &$datos_sql)) {
    
$sent odbc_prepare($con,
     
"INSERT INTO sesiones (id, datos) VALUES(?, ?)");
    if (!
odbc_execute($sent, &$datos_sql)) {
        
/* Algo ha fallado.. */
    
}
}
?>

Registro de cambios

Versión Descripción
4.0.7 El proceso de seriación de objetos fue corregido.
4.0.0 Cuando se serializa un objeto, los métodos ya no se pierden. Por favor refiérase a Seriación de Objetos para más información.

Notes

Note: No es posible seriar objetos integrados de PHP.