Hallo Gemeinde,
ich habe ein kleines Problem. Und zwar versuche ich gerade Klassen nach Namen zu laden ohne den Pfad jedesmal einzugeben. Ich weiss dazu gibt es __autoload() die verwende ich ja auch. Nur entspricht das noch nicht meinen Anforderungen. Den ich will das bestimmte komponenten geladen werden in mein core programm, welche aber auch ihre eigenen Klassen mitbringen. welche aber eine abstracte Klasse per extends einbinden. Nun habe ich folgendes Problem.
Die Klasse in der Komponente wird gefunden. Aber das extends versucht die abstracte Klasse im KomponentenOrdner zu finden. Wo diese aber nicht liegt und genau da ist mein Problem. Wie bitte bekomme ich es hin das das geht?
php:5.0.3
OS:Linux
Die Variablenangaben stimmen alle.
Der Pfad der an $ClassLoader->TargetPath gegeben wird ist auch der der gesuchten Klasse.
Ich hoffe ich habe mich verständlich ausgedrückt.
Gruss
ich habe ein kleines Problem. Und zwar versuche ich gerade Klassen nach Namen zu laden ohne den Pfad jedesmal einzugeben. Ich weiss dazu gibt es __autoload() die verwende ich ja auch. Nur entspricht das noch nicht meinen Anforderungen. Den ich will das bestimmte komponenten geladen werden in mein core programm, welche aber auch ihre eigenen Klassen mitbringen. welche aber eine abstracte Klasse per extends einbinden. Nun habe ich folgendes Problem.
Die Klasse in der Komponente wird gefunden. Aber das extends versucht die abstracte Klasse im KomponentenOrdner zu finden. Wo diese aber nicht liegt und genau da ist mein Problem. Wie bitte bekomme ich es hin das das geht?
php:5.0.3
OS:Linux
PHP-Code:
$ClassLoader = new Module_ClassLoader(index::$globalconf['config']['ApplicationPath'].
index::$globalconf['config']['ComponentPath'],$classname);
$path = $ClassLoader->TargetPath;
if(file_exists($path.$classname.index::$globalconf['config']['PhpExtension'])){
require($path.$classname.index::$globalconf['config']['PhpExtension']);
}
die dazu gehörende Fehlermeldung:
Fatal error: Class 'AbstractException' not found in
/usr/local/apache2/htdocs/components/calender/exception/ArgumentException.php on line 3
Zeile 3 besagt folgendes:
class ArgumentException extends AbstractException {
Der Pfad der an $ClassLoader->TargetPath gegeben wird ist auch der der gesuchten Klasse.
Ich hoffe ich habe mich verständlich ausgedrückt.
Gruss
Kommentar