Les fonctions magiques __sleep et __wakeup

serialize( ) s 'assure que votre classe a une méthode avec le nom magique __sleep . Si c ' est le cas , cette fonction est appelée avant toute linéarisation . Elle peut alors nettoyer l' objet et on s'attend à ce qu 'elle retourne un tableau avec la liste des noms de variables qui doivent être sauvées .

Le but de cette fonction __sleep est de fermer proprement toute connexion à une base de données , de valider les requêtes , de finaliser toutes les actions commencées . Cette fonction est aussi pratique si vous ave de très grands objets qui n' ont pas besoin d 'être sauvé entièrement .

A l' inverse , unserialize( ) s 'assure de la présence de la fonction magique __wakeup . Si elle existe , cette fonction reconstruit toutes les ressources d ' un objet .

Le but de cette fonction __wakeup est de rétablit toutes les connexions aux bases de données , et de recréer les variables qui n ' ont pas été sauvées .