SommaireTelecharger la documentationChapitre suivantChapitre precedent  

 
Raccourci :  
Variables

doubleval
empty
gettype
get_defined_vars
get_resource_type
intval
is_array
is_bool
is_double
is_float
is_int
is_integer
is_long
is_null
is_numeric
is_object
is_real
is_resource
is_scalar
is_string
isset
print_r
serialize
settype
strval
unserialize
unset
var_dump

8.23.23 serialize
[Notes en ligne] [Exemples]

Linéarise une variable pour la sauver sur le disque

string serialize (mixed value)
serialize() retourne une chaîne contenant une représentation linéaire de value, pour stockage.
C'est une technique pratique pour stocker ou passer des valeurs de PHP entre scripts, sans perdre ni leur structure, ni leur type.
Pour relire une variable linéarisée, et en refaire une variable, utilisez unserialize(). serialize() accepte tous les types sauf les resource. Elle accepte aussi les tableaux contenant des références sur eux-mêmes. Les références d'un objet ou tableau vers l'un de ses éléments seront aussi stockées.

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.

Exemple avec serialize()


<?php
// $session_data contient un tableau multi-dimensionnel , avec les
// informations de session de l'utilisateur courant. On utilise serialize()
// pour les stocker dans une base de données
  $conn = odbc_connect ("webdb", "php", "chicken");
  $stmt = odbc_prepare ($conn, "UPDATE sessions SET data = ? WHERE id = ?");
  $sqldata = array (serialize($session_data), $PHP_AUTH_USER);
  if (!odbc_execute ($stmt, &$sqldata)) {
    $stmt = odbc_prepare($conn,
     "INSERT INTO sessions (id, data) VALUES(?, ?)");
    if (!odbc_execute($stmt, &$sqldata)) {
    /* Grosse bourde! Souffre et potasse! */
    }
  }
?>
      


Voir aussi unserialize().


Chapitre précédentChapitre suivantAccueil nexen.net