SELFPHP

SELFPHP-Druckversion
Original Adresse dieser Seite:
http://www.selfphp.de/praxisbuch/praxisbuchseite.php?site=213&group=38
© 2001-2017 E-Mail SELFPHP OHG, info@selfphp.de
© 2005-2017 E-Mail PHP5 Praxisbuch - Matthias Kannengiesser, m.kannengiesser@selfphp.de


Verzeichnisoperationen


Für die Verwaltung des Verzeichnissystems und dessen Manipulation stellt Ihnen PHP ebenfalls eine Reihe von Funktionen zur Verfügung. Die wichtigsten Funktionen habe ich in der folgenden Tabelle zusammengefasst:

FunktionBeispielBedeutung
chdir(directory)chdir ($directory);Wechselt das aktuelle Verzeichnis.
getcwd ()echo getcwd ();Liefert das aktuelle Arbeitsverzeichnis.
mkdir (path,mode)mkdir ($path, 0700);Erzeugt ein Verzeichnis mit dem angegebenen Namen. Mode ist standardmäßig 0777, was den weitestmöglichen Zugriff bedeutet.
rmdir (directory)rmdir ($directory);Löscht ein Verzeichnis.


Hinweis: Ich werde in den folgenden Beispielen lediglich den Schrägstrich (/) als Trennzeichen für Verzeichnisse verwenden. Dieses Zeichen wird von Unix und inzwischen auch von Windows akzeptiert. Der auf DOS-Systemen übliche Backslash wird hingegen nur von Windows unterstützt.

Die Funktionen erwarten als Argument eine Pfadangabe. Es kann sich um einen relativen oder um einen absoluten Pfad handeln:

<?php

if (chdir("C:/xamppbuch")) {
  echo "Verzeichnis gewechselt!";
}

?>

Im Erfolgsfall wird der Wert true zurückgegeben, andernfalls false. Sinnvoll ist die Funktion, wenn Sie in anderen Funktionen relative Pfade einsetzen wollen. Die folgende Anweisung liefert, wenn die Datei existiert, immer den Wert true:

echo file_exists("C:/xamppbuch/php/php.exe");

Das gilt jedoch nicht für folgende Schreibweise, die keine Pfadangabe enthält:

echo file_exists("php.exe");

Hier müssen Sie zuvor mit der Funktion chdir() das aktuelle Verzeichnis setzen, um anschließend mit file_exists() die Datei zu prüfen.


Einsatz von mkdir() und rmdir()

Mit der Funktionen mkdir() sind Sie in der Lage, ein neues Verzeichnis anzulegen. Die Funktion rmdir() dagegen löscht Verzeichnisse. Auch diese beiden Funktionen beziehen sich, wenn keine vollständigen Pfade übergeben werden, auf das aktuelle Verzeichnis. Sicherer ist natürlich die Angabe vollständiger Pfade:

<?php
echo mkdir("C:/ xamppbuch/neu",0700);
?>

Um dieses Verzeichnis zu löschen, können Sie die Funktion rmdir() einsetzen:

<?php
echo rmdir("C:/ xamppbuch/neu");
?>

Beide Funktionen liefern bei fehlerfreier Ausführung den Wert true, andernfalls wird eine Fehlermeldung ausgegeben.