Robert B.: Funktions Bibliothek aufbauen und bei Bedarf einzeln abrufen

Beitrag lesen

Moin,

Ich stelle mir ein Verzeichnis oder DB vor mit vielleicht Hunderten von Funktionen, die ich so simple aufrufen kann wie hauseigene PHP-Funktionen, also permanent präsent bei Bedarf. Doch Du scheinst da schon eine andere Lösung im Auge zu haben, doch wie meinst Du das genau mit dem modularisieren?

Die eingebauten PHP-Funktionen sind – wie der Name sagt – eingebaut, d.h. sie sind immer präsent und nicht „nur bei Bedarf“. Dieser Code ist also (zumindest beim direkten interpretieren bis PHP 5.4) immer im Arbeitsspeicher vorhanden.

Dein Vorschlag erfordert bei jedem Aufruf einer vorher nicht definierten Funktion eine (möglicherweise sehr kostspielige) Suche danach, bevor sie geladen und ausgeführt wird. Du willst dir damit wahrscheinlich das „Wissen“ ersparen, in welcher Datei die Funktion zu finden ist. Das kann problematisch werden, wenn es in deinem Datenbestand mehrere Funktionen mit dem gleichen Namen geben sollte, denn dann hängt es vom Suchergebnis ab, welche Funktion zur Verfügung steht und letztlich aufgerufen wird.

Sinnvoller ist meiner Meinung nach, Funktionsbibliotheken anzulegen, d.h. Dateien mit Funktionen gleicher „Kategorie“, z.B. Dateisystem, Datenbanken, Login, … Jede Bibliothek ist dann bspw. eine Datei mit den Funktionen, die du per include(_once) oder require(_once) einbindest. Sobald du mehrere Funktionen in deinem Skript benötigst, ist dieser Ansatz wohl deutlich performanter, da möglicherweise (sehr wahrscheinlich) sehr viel weniger Zugriffe aufs Dateisystem oder Datenbanken nötig sind.

Viele Grüße,
Robert