Hi,
kurzer Erfahrungsbericht als Bestätigung: Autoload
ist bei mir vollkommen rausgeflogen - ich arbeite
ausschließlich mit Klassen und habe mir genau den
oben beschriebenen Ärger direkt zu Beginn eingefangen -
falscher Text --> falsche Klasse, fatal error in __construct(),
weil die Argumente nicht passen.
Ich denke mittlerweile, dass gerade dann, wenn Objekte
dynamisch instantiiert werden, muss man vorher einen
Blick auf die Klasse und die Vererbungsliste / Interface-
Liste der Klasse werfen, d.h. das require_once() bzw. dann
besser include_once() mit Fehlerprüfung muss einem "new"
dann eh vorausgehen. Anscheinend bietet class_implements()
dafür auch direkt ein autoload mit default=true an ;-)
PHP-Code:
bool is_subclass_of (mixed $classNameOrInstance , string $expectedBaseClass)
array class_implements (mixed $classNameOrInstance [, bool $autoload=true ] )
Daher ist mir autoload bei new zu unsicher.
In den anderen ("statischen") Fällen sind die requires bekannt,
also auch kein autoload benötigt.
Naja, dynamische Klassen in PHP sind wohl irgendwo ein philosophisches
Thema - ob meine Ausführungen nun der ganzen und einzigen Wahrheit
entsprechen ist wohl fragwürdig, aber es ist mal eine weitere Sichtweise ...
Gruß
Stefan