TS: $GLOBALS oder Static für Konfigurationen?

Beitrag lesen

Hello,

um Konfigurationen in einem Framework zu setzten, kann man ein Superglobale assoziatives Array verwnden $GLOBALS oder eine Klasse Config::get() - mein Wissensstand.

Man kann inzwischen auch Array of Const benutzen.

Was man bentutzen, hängt immmer davon ab, ob die Konfiguration während der Laufzeit verändert werden darf, oder nicht.

[...] bei einem Superglobalen assoziativem Array wie $SESSION oder $SERVER

Die heißen $_SESSION und $_SERVER.

Ich bevorzuge es, die Konfiguration in leicht lesbaren INI-Dateien extern abzuspeichern und in den Modulen, in denen darauf zugegriffen werden soll, einen hart codierten Vorgabewert einzusetzen für den Fall, dass der Konfigurationsparameter fehlt.

Den Zugriff auf die Konfigurationsparamter mit einem Getter zu schützen, macht das ganze Skript leichter lesbar (verständlicher) und etwas sicherer gegen unbeabsichtigte Veränderung.

Ob man dann Veränderungen trotzdem zurückschreiben lässt in die Konfigurationsdateien muss der Einzelfall ergeben. Diese Möglichkeit würde Programme allerdings "lernfähig" machen.

Liebe Grüße
Tom S.

--
Es gibt nichts Gutes, außer man tut es
Andersdenkende waren noch nie beliebt, aber meistens diejenigen, die die Freiheit vorangebracht haben.