Der ClassLoader lädt automatisch PHP-Dateien bzw. -Klassen. Hierfür erfolgt anhand des Namespaces eine Zuordnung zu einer bestimmten Datei, welche anschließend included wird.
- Zuerst muss die PHP-Datei, die den ClassLoader beinhaltet included werden.
- Anschließend muss der ClassLoader angelegt (registriert) werden.
<?php
use Drips\ClassLoader\ClassLoader;
require_once 'classloader.php';
$loader = new ClassLoader;
Neben dem Laden von Klassen mithilfe der load
-Methode können Namespaces auch manuell registriert werden, wenn diese beispielsweise in einem anderem (Unter-)Verzeichnis liegen.
<?php
$loader->registerNamespace("Drips", "core/lib");
Somit können Dateien, die im Namespace Drips
liegen von core/lib/Drips
geladen werden.
Außerdem kann ein Standardverzeichnis festgelegt werden, von welchem der ClassLoader die Dateien beziehen soll.
<?php
$loader->load_dir = "core/lib";
Dadurch werden alle Klassen die vom ClassLoader geladen werden sollen im Verzeichnis core/lib
gesucht.
Wenn neben der Standard-Endung .php
auch weitere Extensions zugelassen werden sollen, kann dies wie folgt erreicht werden:
<?php
$loader->extensions[] = ".class.php";
Die aktuellen Extensions können wie folgt abgefragt werden.
<?php
$loader->extensions;