J'ai une fabrique singleton et je voudrais qu'elle renvoie une référence à l'instance d'objet afin que je puisse utiliser l'usine singleton pour détruire l'instance et ne pas avoir d'instances ailleurs dans mon code pour survivre.Renvoyer une référence à une instance d'un objet dans PHP
Exemple de ce que je voudrais être en mesure de le faire:
$cat = CatFactory::getInstance();
$cat->talk(); //echos 'meow'
CatFactory::destructInstance();
$cat->talk(); //Error: Instance no longer exists
J'ai du mal à comprendre comment cela fonctionne. Pourriez-vous élaborer pour moi s'il vous plaît? –
En marquant les méthodes privées, il déclenche la méthode magique '__call'. Cette fonction transfère essentiellement l'appel à la fonction privée si l'instance $ private static n'a pas été détruite. C'est en quelque sorte la même chose que d'ajouter 'if (! Self :: $ instance) throw new Exception();' en haut de chaque fonction publique. – Matthew