Tom: Fehlermeldung definieren (wenn include datei nicht gefunden)

Beitrag lesen

Hello,

das ist bei include() und include_once() nicht so ganz einfach, da beides keine Funktionen sind, sondern nur "Anweisungen" http://de2.php.net/manual/de/function.include-once.php. Sie haben daher keinen direkten Rückgabewert.

Die automatische Fehlerbehandlung lässt sich aber trotzdem mittels

@include_once($datei);

unterdrücken.

Wenn das Fehlertracking eingeschaltet ist

track_errors  (siehe php.ini)

kann man anschließend in $php_errormsg nachschauen, ob eine Fehlermeldung eingetragen ist. Wenn jedoch strlen($php_errormsg) == 0 ist, kann man davon ausgehen, dass die include-Anweisung (oder auch require) funktioniert hat.

Außerdem empfiehlt es sich, jedem Modul einen eigenen Variablenbereich zuzuordnen. Die Variablen eines Moduls sammelt man am besten in einem Array, das den namen den Moduls trägt.

include("email.inc.php");  würde dann also im Script eine Array mit dem Namen $_email erzeugen. Die Existenz dieses Arrays kann man abfragen mittels isset($_email).

Man könnte dem Modul auch einen "Konstruktor" namens email() mitgeben. AUch die Existenz dieser Funktion ließe sich mittels function_exists() http://de2.php.net/manual/de/function.function-exists.php abfragen.

Konzepte gibt es also genug.

Eine einheitliche saubere Lösung bringt erst der Sprachstandard PHP 5 OOP.

Liebe Grüße aus http://www.braunschweig.de

Tom

--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen