Singletion Klasse wird mehrmas instanziert

redX

Erfahrenes Mitglied
Ich brauche eine Singleton Klasse. Habe auch eine getInstance Funktion. Jedoch instanziert die Funktion die Klasse mehrmals....

Singleton Klasse:
PHP:
class Event_Controller {

	private static $eventController;

	/**
	 * Constructor
	 */
	private function __construct() {
		$this->logger = new Arena_Logger("Event_Controller");
		$this->logger->debug("Instantiate event controller", new Exception());
	}

	public static function getInstance() {
		if (!isset(self::$eventController)) {
			$class = __CLASS__;
			self::$eventController = new $class;
		}

		return self::$eventController;
	}
}

Aufruf:
PHP:
	$eventController = Event_Controller::getInstance();

Mach ich irgend etwas falsch? Denn den folgenden Logout output bekomme ich mehrmals...
[Event_Controller] Debug: Instantiate event controller in /blabla/bla/event_controller.php@91

Sieht wer irgendwo den Fehler?

Gruss
X
 
Zuletzt bearbeitet:
Ach blödheit. Ich habe ziemlich viel noch im Constructor gemacht. Und dort dann wiederum getInstance aufgerufen. Dann wurde natürlich noch keine Instanz vom Event_Controller erstellt *sich selber hau*. Schlussentlich gab das eine schöne Rekursion ^^

;)
 
Zurück