Allwissendes Karmameerschweinchen!
Hi Experten
ich versuche mich gerade im Programmieren eines eigenen Frameworks nach MVC. Dabei bin ich jetzt bei den Themen Bootstrap und SPL unter PHP hängen geblieben.
Vor Allem die Funktionen spl_autoload und spl_autoload_register machen es mir etwas schwer.
Wenn ich es richtig verstanden habe, kann man mit spl_autoload_register quasi on the fly instanzieren, was mir ellenlange includes oder requires erspart. Aber so wie ich das aktuell mache, sehe ich nicht wirklich den Vorteil...
Hier mal mein Beispielcode, der einfach die spl_autoload_register aufruft und als Parameter ne anonyme Funktion übergibt, das Verzeichnis ROOT.L durchsucht und für jede gefundene Datei dann das include durchführt.
Jetzt include ich ja trotzdem selber. Also gehe ich mal davon aus, dass ich die Funktion falsch nutze.
Lange Rede, kurzer Sinn: Kann mir jemand mal erklären, wie der Aufruf richtig gemacht wird? die php.net Beispiele helfen mir da auch nicht wirklich weiter...
ich versuche mich gerade im Programmieren eines eigenen Frameworks nach MVC. Dabei bin ich jetzt bei den Themen Bootstrap und SPL unter PHP hängen geblieben.
Vor Allem die Funktionen spl_autoload und spl_autoload_register machen es mir etwas schwer.
Wenn ich es richtig verstanden habe, kann man mit spl_autoload_register quasi on the fly instanzieren, was mir ellenlange includes oder requires erspart. Aber so wie ich das aktuell mache, sehe ich nicht wirklich den Vorteil...
Hier mal mein Beispielcode, der einfach die spl_autoload_register aufruft und als Parameter ne anonyme Funktion übergibt, das Verzeichnis ROOT.L durchsucht und für jede gefundene Datei dann das include durchführt.
PHP:
spl_autoload_register(function ($className) {
$libFiles = new DirectoryIterator(ROOT.L);
foreach($libFiles as $file) {
if($file->isFile()) {
include_once $file->getPath() . DS . $file->getFilename();
}
}
});
Jetzt include ich ja trotzdem selber. Also gehe ich mal davon aus, dass ich die Funktion falsch nutze.
Lange Rede, kurzer Sinn: Kann mir jemand mal erklären, wie der Aufruf richtig gemacht wird? die php.net Beispiele helfen mir da auch nicht wirklich weiter...