Wie erstellt man einen Ordner, wenn er nicht in PHP existiert

Ralfh Bryan Perez 30 Januar 2023
  1. file_exists(), um zu prüfen, ob eine Datei oder ein Verzeichnis in PHP existiert
  2. is_dir() um zu prüfen, ob eine Datei oder ein Verzeichnis in PHP existiert
  3. file_exists() vs is_dir() in PHP
  4. mkdir() in PHP
Wie erstellt man einen Ordner, wenn er nicht in PHP existiert

Es ist möglich, einen Ordner zu erstellen und die entsprechenden Berechtigungen in PHP zu setzen, insbesondere mit der Funktion mkdir().

Der Standard-Berechtigungsmodus ist 0777 (größtmöglicher Zugriff). Bevor ein Verzeichnis erstellt wird, wird zuerst importiert, um zu prüfen, ob das Verzeichnis oder eine Datei existiert oder nicht. In PHP kann dies mit file_exists oder is_dir geschehen.

file_exists(), um zu prüfen, ob eine Datei oder ein Verzeichnis in PHP existiert

Die Funktion file_exists ist eine eingebaute Funktion, um zu prüfen, wo ein Verzeichnis oder eine Datei existiert oder nicht. Sie akzeptiert einen Parameter eines Pfades, der true zurückgibt, wenn er bereits existiert, oder false, wenn nicht.

Beispiel mit file_exists():

$path = "sample/path/newfolder";
if (!file_exists($path)) {
    mkdir($path, 0777, true);
}

Im obigen Beispiel prüft es die Existenz des Verzeichnisses mit der Funktion file_exists() und erstellt dann das Verzeichnis newfolder, wenn das Ergebnis falsch ist, mit der Erlaubnis von 0777.

is_dir() um zu prüfen, ob eine Datei oder ein Verzeichnis in PHP existiert

Diese Funktion ist auch ähnlich wie file_exists, und der einzige Unterschied ist, dass sie nur dann true zurückgibt, wenn die übergebene Zeichenkette ein Verzeichnis ist, und false, wenn es sich um eine Datei handelt.

Beispiel mit is_dir:

$path = "sample/path/newfolder";
if (!is_dir($path)) {
    mkdir($path, 0777, true);
}

Im obigen Beispiel prüft is_dir, ob der Ordner bereits existiert, bevor ein neuer Ordner mit mkdir erstellt wird.

file_exists() vs is_dir() in PHP

Beide Funktionen prüfen die Existenz des Verzeichnisses, der einzige Unterschied ist, dass file_exists() auch true zurückgibt, wenn der übergebene Parameter eine Datei ist. Auf der anderen Seite ist is_dir etwas schneller als file_exists.

mkdir() in PHP

Diese Funktion erzeugt ein Verzeichnis, das durch einen Pfadnamen angegeben wird, der als Parameter übergeben wird. Der erwartete Rückgabewert ist true oder false.

Beispiel-Implementierung:

mkdir($path, $mode, $recursive, $context);

Parameter-Werte

Parameter Werte
path (erforderlich) Zu erstellendes Verzeichnis oder Pfad
Modus (fakultativ) Verzeichnis- oder Dateierlaubnis. Standardmäßig ist der Modus 0777 (größtmöglicher Zugriff).
Der mode besteht aus vier Zahlen:
1st - immer auf 0
2nd - gibt die Erlaubnis des Eigentümers des Verzeichnisses oder der Datei an.
3rd - gibt die Erlaubnis der Benutzergruppe des Eigentümers an
4th - gibt die Erlaubnis aller anderen an.
rekursiv (optional) (true oder false)
Um die geschachtelte Struktur zu erzeugen, muss der Parameter rekursiv auf true gesetzt werden.
Kontext (optional) Satz von Parametern, die das Verhalten des Streams verbessern oder modifizieren.

Hinweis: PHP prüft, ob das Betriebsskript im Verzeichnis die gleiche UID(owner) im Verzeichnis hat, wenn der Safe-Modus aktiviert ist.

Verwandter Artikel - PHP Directory