<?php class Controller { public function getInstance() { //kod } } $oContr = Controller::getInstance(); ?>
Jak wy to rozwiązaliście? Miałem kod:
<?php public function getInstance() { if(!self::$oThis instanceof self) { self::$oThis = new self; } return self::$oThis; } ?>
Ale następnie skróciłem go do chyba już nieskracalnej i najwydajniejszej postaci:
<?php public function getInstance() { return self::$oSelf instanceof self ? false : self::$oSelf = new self; } ?>
W wypadku niepowodzenia przy tworzeniu instancji, skrypt zwraca własny konstruktor.