Singleton
Problématique
Comment s’assurer qu’il n’existera pas plus d’une seule instance d’une classe donnée durant toute l’execution du programme?
Solution
class Singleton { /** * propriété de classe qui conservera l'unique instance de la classe */ static private $instance = null ; /** * propriété publique qui fera office de constructeur pour l'extérieur */ static public function getInstance() { if(is_null(self::$instance)) { self::$instance = new Singleton() ; } return self::$instance ; } /** * Le constructeur a été déclaré private * par conséquent, il n'est plus possible d'instancier Singleton * de l'extérieur de la classe */ private function __construct() { } }

Commentaires récents