Wie funktioniert spl_autoload?
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
aktuelle verzeichnis
angegebene extension
code
datei
dementsprechend anpassen
einbinden
heiterem himmel
ordner
suchen
weile
-
Heyho
Die Überschrift sagt es vllt, wie funktioniert spl_autoload.
Ich hab da ne Weile rumgelesen und les jetzt sowas raus wie "man braucht dem spl_autoload nur den classname geben, und dann durchsucht er den Webspace und included eine Klasse mit [CLASSNAME][ANGEGEBENE EXTENSION]. Wobei standartgemäß ja die extensions .php und .inc angegeben sind. Sprich hätte ich irgendwo die Datei "myclass.php" und würde einfach aus heiterem Himmel new myclass schreiben (mit dem spl aktiv) würde er die Datei von alleine finden und einbinden.
Stimmt das? Hat das einschränkungen oder kann ich wirklich schreiben:
spl_autoload_extensions( '.class.php' ); spl_autoload_register(); $var = new myclass();
Ich bräuchte ein bissel Aufklärung :-S -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Stimmt fast. spl_autoload sucht jedoch nicht den ganzen Webspace ab, sondern nur den include_path. Dieser enthält standardmäßig typischerweise das aktuelle Verzeichnis (.) und den PEAR Ordner. Wenn deine Klasse nicht in einem der beiden Ordner liegt, dann musst den den include_path dementsprechend anpassen:
set_include_path('./lib/' . PATH_SEPARATOR . get_include_path()); -
Cool! Das ist ja hilfreich.
Kann ich innerhalb des include_path's auch Ordnerstrukturen haben für meine eigene Übersicht, oder ist das trotz allem verboten? Leider wird das nicht so direkt bei php.net oder ähnlichen beantwortet. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage