Hallo Gerrit,
+1 an Martin für den Hinweis auf das Handle, das opendir erzeugt.
Da Du den Verzeichnisinhalt nicht einlesen willst, ist is_dir
aus meiner Sicht die bessere Idee. Die Funktion prüft, ob das angegebene Dateisystemobjekt existiert und ob es ein Verzeichnis ist.
Die anderen Fragen, die sich stellen, sind:
- Warum verwendest Du den @ Operator? Er unterdrückt Fehlermeldungen. Aber welche Fehlermeldung soll hier kommen? Die Doku sagt: "upon failure, an E_WARNING is emitted". Im Produktionsbetrieb gibst Du Warnungen eh nicht aus. @ überflüssig. Im Testbetrieb möchtest Du aber sehen, ob es Warnungen gibt und sie abstellen. @ überflüssig. Was könnte eine "failure" auslösen? Höchstens ein Wert in
$_SERVER['Aktuelles']
, der sich nicht als Pfad zu einem Ordner deuten lässt. Und das führt zur zweiten Frage: - Woher bekommt
$_SERVER['Aktuelles']
seinen Wert? Du kannst im Apache mit SetEnv Aktuelles einen Wert zuweisen - aber das ist dann ein Wert, den Du unter Kontrolle hast und der keinen Fehler in is_dir auslösen sollte.
Rolf
--
sumpsi - posui - obstruxi
sumpsi - posui - obstruxi