unset et variable static [php5] - PHP - Programmation
Marsh Posté le 26-11-2004 à 10:52:30
unset(Singleton::$instance);
bien sur si tu as encore apres ça des variables qui referencent ton objet, il ne sera pas détruit tout de suite ...
Marsh Posté le 28-11-2004 à 21:47:45
j'ai touvé la ruse grace à ton indice. il suffit de faire une méthode static du genre
static function delete_singleton
{
$temp=self::mon_singleton;
self::mon_singleton=NULL;
unset($temp);
}
Marsh Posté le 26-11-2004 à 01:06:43
j'ai commencé à me faire une classe bdd avec un singleton. J'ai mis le mysql_close dans le destructeur de ma classe. Celui-ci est bien appelé automatiquement par php à la fin du script, mais j'aimerai desalouer ma classe et donc fermer ma connection avant la fin du script. Or il est impossible de faire un unset() sur une variable statique ( unset(Singleton::getInstance()) et appeler le destructeur (Singleton::getInstance()->__destruct()) execute bien le destructeur mais ne desaloue pas l'objet, le destructeur et alors appelé automatiquement à la fin du script.
Or j'aimerai avoir la maitrise de la desalocation de toute mes classes. Y a-t-il une solution pour desalouer un singleton?
Message édité par Zapco le 26-11-2004 à 01:16:52