Crée une variable PHP à partir d'une valeur linéarisée
mixed unserialize
(string str)
unserialize() prend une variable linéarisée
(voir serialize()) et la convertit en variable PHP.
La valeur convertie est retournée par la fonction, et peut être de
type integer
, double
,
string
, array
ou object
.
Les objets linéarisés perdent leurs méthodes.
Exemple avec unserialize()
<?php
// Ici, on utilise unserialize() pour charger les données de sessions
// depuis la base de données, dans $session_data. Cet exemple complète
// celui fourni avec serialize().
$conn = odbc_connect ("webdb", "php", "chicken");
$stmt = odbc_prepare ($conn, "SELECT data FROM sessions WHERE id = ?");
$sqldata = array ($PHP_AUTH_USER);
if (!odbc_execute ($stmt, &$sqldata) || !odbc_fetch_into ($stmt, &$tmp)) {
// si la préparation ou la lecture échoue, on crée un tableau vide
$session_data = array();
} else {
// les données sauvées sont dans $tmp[0].
$session_data = unserialize ($tmp[0]);
if (!is_array ($session_data)) {
// Erreur... initialisation à tableau vide
$session_data = array();
}
}
?>
Note :
En PHP 3, les propriétés des objets seront linéarisées, mais pas leurs
méthodes, qui seront perdues. PHP 4 lève cette limitation, et récupère
les propriétés et les méthodes. Reportez-vous à la section
linéarisation des objets
du chapitre Programmation objet.
Voir aussi
unserialize().