molily: Klassen nebeneinander benutzten

Beitrag lesen

Hallo,

Wenn ich jetzt mehrere Klassen nebeneinander definiere, die alle Bestandteil meines Hauptprogrammes sind, wie kann dann die eine Klasse auf die Erkenntnisse (Eigenschaften) oder Methoden der anderen zugreifen?

Das Problem, das du ansprichst, nennt sich Dependency Management bzw. konkret Dependency Injection.

Muss ich das Objekt der ersten Klasse bei der Instatiierung der zweiten irgendwie übergeben?

Das ist eine Möglichkeit, ja. Letztlich läuft es darauf meist hinaus – wenn auch nicht manuell.

Oder kann ich mir auch so eine Art Klassen-Speicher bauen, in dem jede Schwesterklasse nachschauen kann, ob die andere Schwester schon aktiv war und dann dort die Objektreferenz abgreifen?

Einfach umgesetzt wäre das ein Singleton.

Sauberer umgesetzt wäre es ein Dependency-Injection-Container, der die Instantiierung und die Übergabe übernimmt. Dafür gibt’s verschiedene Hilfsmittel:
http://pimple.sensiolabs.org/
http://php-di.org/
http://de.slideshare.net/shochdoerfer/dependency-injection-in-php-dwx13

Mathias