Mailinglisten-Archive |
Hallo Steffen, > > $Modul = Pruefe_Modul('fibu'); > /* ^ Liefert bei true 'fibu', sonst 0 */ > $Funktion = Pruefe_Funktion('zudd_erfassen', $Modul); > /* ^ Liefert bei true die Funktion sonst 0 */ > Ich würde das anders angehen. Punkt 1. ist, dass unter Umständen mit jedem Funktionsaufruf "Pruefe_Funktion()" ein Datenbankzugriff generiert wird, was unnötig ist. Bei einer nicht allzu großen Anzahl von Funktionen kannst Du lieber so vorgehen (Ob die Daten aus der DB kommen oder nicht mußt Du selber umsetzen, ich gehe davon aus, dass man eine Liste erlaubter Funktionen für einen Benutzer durchlaufen kann): <schnipp> durchlaufe_Liste_der_erlaubten_funktionen { $all_functions[$momentane_funktionskennung] = true; } <schnapp> In Deinem Beispiel hättest Du ein assoziatives Array mit: $all_functions["fibu"] = true; $all_functions["zudd_erfassen"] = true; Später kannst Du dann über eine ganz einfache Prüfung checken, ob der Benutzer darf oder nicht: if($all_functions["fibu"] == true) { echo "jo, gell?"; } else { echo "äh, nö."; } Zudem hast Du (sofern Du eine DB nutzt) nur einen einzigen Zugriff auf die Tabelle mit den Rechten, was Zeitvorteile bringt. Grüße Tim
php::bar PHP Wiki - Listenarchive