dedlfix: Geltungsbereich Variable in Funktion

Beitrag lesen

Tach!

Kann man das erneute includen in jede Funktion irgendwie umgehen?

Um auf globale Variablen in Funktionen zuzugreifen, muss man diese dort entweder mit dem Schlüsselwort global bekanntgeben, oder man greift über das $GLOBALS-Array zu, das ist superglobal und von überall ansprechbar.

Schön ist diese Vorgehensweise aber nicht. Man muss vor dem Funktionsaufruf wissen, was man erst zu initialisieren hat, damit die Funktion arbeiten kann. Besser ist es, man fordert die Abhängigkeiten über Parameter ein, damit man das nicht vergessen kann. Man nennt das Dependency Injection. Allerdings ist das dann auch Arbeit, die Abhängigkeiten herumzureichen. Und so hat man Dependency-Injection-Frameworks entwickelt, die einem die Arbeit größtenteils abnehmen. Lohnt sich aber erst ab großen Projekten, wenn es nicht bereits im sowieso schon verwendeten Framework enthalten ist.

dedlfix.