Mit spl_autoload () kann die Klasse nicht geladen werden

8

Ich spiele mit der Autoload-Funktion von SPL herum und es scheint mir etwas Wichtiges zu fehlen, da ich es momentan nicht zum Laufen bringen kann. Hier ist das Snippet, das ich gerade verwende:

%Vor%

Wenn ich echo get_include_path() bekomme, bekomme ich den erwarteten Pfad:

%Vor%

Wenn ich den Code ausführe, erhalte ich folgende Fehlermeldung:

  

Schwerwiegender Fehler: spl_autoload () [function.spl-autoload]: Klassenanforderung konnte nicht geladen werden   /home/someuser/public_html/subdomains/test/contact.php   in Zeile 5

Request.class.php ist definitiv im Verzeichnis / home / someuser / public_html / subdomains / test / includes / classes /.

Was vermisse ich?

    
John Conde 06.07.2010, 14:36
quelle

3 Antworten

19

Es gibt einen Kommentar (anonym) auf Ссылка , der möglicherweise wenden Sie sich an Ihr Problem: spl_autoload_register () scheint nicht gut mit camelcase zu spielen, und in Ihrem Fall könnte versuchen, request.class.php statt Request zu finden ...

    
Yannis 12.05.2012, 13:13
quelle
0

Der Pfad, in dem die Klasse enthalten sein soll, scheint nicht mit dem Pfad übereinzustimmen, den Sie erwarten. Vergleichen Sie

%Vor%

mit

%Vor%

Der Unterschied ist, dass Ihre Klasse nicht in includes/classes/ ist, da Ihre SPL es erfordert, aber ein paar Verzeichnisse darüber.

    
DrColossos 06.07.2010 14:57
quelle
0

Ich habe eine ähnliche Fehlermeldung erhalten, aber mein Problem war anders. Meine Fehlermeldung sah wie

aus %Vor%

Es stellte sich heraus, dass ich vergessen habe, Lib\ von Lib\Regex in der Regex-Klassendefinition selbst zu entfernen. Ich hatte etwas wie das Folgende:

%Vor%     
David Winiecki 28.01.2015 05:46
quelle

Tags und Links