Malcolm Beck`s: spl_autoload_register

Beitrag lesen

Hi Sven,

spl_autoload_register(function ($class) {
    include 'classes/' . $class . '.class.php';
});

Ich muss mich noch an die neue Forensoftware gewöhnen.

  1. _once-Funktionen müssen intern Buch führen über die bereits geladenen Dateien. Das kostet Performance, weil vor allem relative Pfade erst einmal zu vollständigen, absoluten Pfaden im Dateisystem expandiert werden müssen.

Deine Performance-Tipps sind unbezahlbar. Von der internen Buchführung hatte ich keine Ahnung.

  1. "require" bricht aber ab, wenn die gewünschte Datei nicht existiert - include lässt das Skript weiterlaufen.

Ich bleib doch beim includen :)

Autoloading ist übrigens schon uralt, Christian Seiler hat Ende 2007 dazu was ins Blog geschrieben: https://blog.selfhtml.org/2007/12/04/php-autoload/

Ja, ich weiss. Klassen sind ja noch viel älter, aber manchmal brauch ich etwas länger :) Ich hab gerade mal so ansatzweise den Sinn von Klassen verstanden. Das hoffe ich zumindest.

Außerdem sei dir an dieser Stelle wärmstens ans Herz gelegt, dich mal über "Composer" zu informieren.

Konnte jetzt auf anhieb kein Projekt installieren. Das schaue ich mir morgen nochmal an.

Für Autoloading sind die zwei Standards "PSR-0" und "PSR-4" entstanden, und Composer erlaubt es auf sehr einfache Art, für eigenen Code das Autoloading zu definieren - was insbesondere vorteilhaft ist, wenn man noch fremde Bibliotheken mit einbindet. (Anmerkung: PSR-0 ist deprecated

Passt wieder wunderbar, ich fang gerade an, mich in Klassen einzuarbeiten. Kann ich gleich halbwegs richtig starten.

Vielen Dank für die ausführliche Erklärung! Immer wieder eine Freude, dich und Dedlfix zu lesen.

Bis bald

--
Hosen sind Blau