Tach!
I.d.R. ist der Konstruktor eine Klassenmethode, d.h., er wird mit dem Klassen-Namen aufgerufen. Andere Methoden sind Objekt-Methoden, die werden mit der Instanz der Klasse aufgerufen.
PHP! Der Konstruktor kann erst aufgerufen werden, wenn die Instanz existiert. Anderenfalls könnte man im Konstruktor nicht auf deren Mitglieder zugreifen. Demzufolge ist der Konstruktor eine Objekt-Methode. Klassen-Mitglied ist alles was statisch ist, der Rest ist Objekt-Mitglied. Es gibt auch keine statischen Konstruktoren in PHP. Der Konstruktor ist lediglich eine speziell benannte Methode, die nach der Instantiierung aufgerufen wird.
Es gibt zwei Möglichkeiten: Entweder liefert der Konstruktor eine zweite Instanz der Klasse (Clone) oder er liefert exakt dieselbe Instanz (Singleton-Class).
Das ist bezogen auf PHP falsch. Eine Instantiierung ist kein Clone. Nicht die Konstruktor-Methode liefert die Instanz, sie wird aufgrund des Operators new erzeugt. Es ist nicht einmal notwendig, eine Konstruktor-Methode zu haben. Wenn ein Singleton gewünscht ist, muss man dazu eine statische Methode verwenden. Die Konstruktor-Methode ist dafür nicht geeignet.
dedlfix.