Du könntest die Plugins natürlich auch über ein Observer Pattern implementieren, so dass du an gewissen Stellen in dennen du Plugins anbieten willst einfach das Observable Interface Implementierst, dass seinen ganzen Context ($this) an die Listener bzw. deine Plugins übergibt. Dann kannst du ganz normal deine DI konfigurieren und dann trozdem dynamisch Plugins registrieren, die dann über den Context auf verschiedene Konfigutationen zugreifen (wie z.B.: ein DB-Objekt oder Registry-Objekt)
gruß
René |