Der große Haken daran ist die schlampige bis dilletantische Umsetzung von PHP an sich und PHP-Projekten im besonderen. Der gesamte autoload-Mechanismus wird ganz schnell zu einem Schuss ins Knie wenn man mehrere verschiedene PHP-Applikationen in einem Environment integrieren muss. Das fängt dann schon damit an, dass man drei PHP-Apps hat welche __autoload() benutzen. Und dass dann meist mit der Implikation, dass "meine App" ja die einzige auf der Welt ist. Und schon hat man das Problem wie man die verschiedenen Implementierungen von Autoload integriert, ohne krude Hacks zu machen.
An und für sich ein nettes Feature, aber im Kontext einer so lumpigen Sprache wie PHP und der größtenteils noch lumpiger geschriebenen Anwendungen ist bei größeren Projekten eher davon abzuraten.
Im übrigen ist es ein Performancegewinn (PHP ist auch recht langsam...), wenn man exakt immer nur an der Stelle ein require_once() macht, wo man die Klasse auch braucht. Im übrigen sollte man Klassen nicht mit include/require einbinden, da man sonst recht schnell Redeclaration-Erros bekommt.
Ach ja: Ich muss im grinsen, wenn mri Leute erklären dass PHP jetzt enterprise-application-fähig geworden ist...