| 

.NET C# Java Javascript Exception

1
Über die autoload-Funktion kann man ja fehlende Klassen noch beim Kompilieren einbauen lassen. Gibt es Richtlinien, wo diese Funktion stehen muss?
News:
24.02.2011
torro 41 1
2 Antworten
0
Gute Frage. Ich habe ein wenig gegoogelt und etliche Seiten über die Verwendung von Autoload gefunden - nur leider keine mit Richtlinien, wo man diese einsetzt. Einzig auf Galileocomputing fand sich etwas:

Im Galileo-Press-Blog-Projekt wird der Autoload-Mechanismus innerhalb der Datei index.php im Verzeichnis htdocs/ eingebunden, denn alle HTTP-Requests der Applikation werden über diese Datei abgewickelt. So steht das Autoloading in späteren Kapiteln automatisch überall zur Verfügung.
24.02.2011
Jens Duczmal 2,2k 2 8
0
Hallo,
Wenn immer eine Klasse verwendet wird und diese noch nicht deklariert wurde, überprüft PHP ob im globalen Namensraum eine Funktion mit dem Namen __autoload() exisistiert und ruft dann diese auf mit dem Namen der nicht deklarierten Klasse als Parameter auf.

Beispiel:
<?php
echo "Starte Anwendung<br/>\n";
$foo=new myClass;
echo "Fertig<br/>\n";

function __autoload($className) {
echo "Automatisches nachladen der Klasse $className<br/>\n";
$fileName = "klassen/$className.php";
require $fileName;
}
?>

Im Verzeichnis "klassen" befindet sich dann eine Datei "myClass.php", die die Klasse beinhaltet.
26.02.2011
Jaksa 2,5k 1 7
Jaksa 2,5k 1 7

Stelle deine Php-Frage jetzt!