Variable handling Funzioni
PHP Manual

serialize

(PHP 4, PHP 5)

serializeGenera una versione archiviabile del valore

Descrizione

string serialize ( mixed $value )

Genera una versione archiviabile di un valore

Questo è utile per archiviare o passare valori a PHP senza perderne il tipo e la struttura.

Per ottenere il valore dalla stringa serializzata, utilizzare la funzione unserialize().

Elenco dei parametri

value

Il valore da serializzare. serialize() gestisce tutti i tipi di variabili tranne il tipo resource. Possono essere elaborati da serialize() array che contengano riferimenti a se stessi. Saranno archiviati anche i riferimenti circolari negli array/object. Ogni altro riferimento verrà perso.

Quando si esegue la serializzazione di oggetti, PHP cerca di eseguire la funzione __sleep prima di cominciare la serializzazione. Questo permette all'oggetto di eseguire le ultime operazioni di chiusura prima di essere serializzato. Analogamente, quando l'oggetto viene ripristinato usando unserialize() viene chiamata la funzione membro __wakeup.

Nota:

I membri privati dell'oggetto avranno il nome della classe preposto al nome del membro; i membri protetti avranno un '*' preposto al nome del membro. Questi valori preposti sono delimitati da byte null.

Valori restituiti

Restituisce una stringa contenente un flusso di bytes rappresentante value che può essere archiviato ovunque.

Esempi

Example #1 Esempio di serialize()

<?php
// L'array multi-dimensionale $session_data contiene le informazioni della sessione
// per l'utente. Si userà serialize() per memorizzare le informazioni
// all'interno di un database alla fine della richiesta..

$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)) {
        
/* Qualcosa non ha funzionato... */
    
}
}
?>

Log delle modifiche

Versione Descrizione
4.0.7 Il processo di serializzazione degli oggetti è stato corretto.

Note

Nota:

It is not possible to serialize PHP built-in objects.

Vedere anche:


Variable handling Funzioni
PHP Manual