chmod

(PHP 4, PHP 5, PHP 7, PHP 8)

chmodÄndert den Modus für die Zugriffsrechte einer Datei

Beschreibung

chmod(string$filename, int$permissions): bool

Versucht, den Modus für die Zugriffsrechte der angegebenen Datei zu dem in permissions definierten zu ändern.

Parameter-Liste

filename

Pfad zu der Datei.

permissions

Es ist zu beachten, dass permissions nicht automatisch für einen Oktalwert gehalten wird. Um also sicherzustellen, dass die Operation wie erwartet verläuft, muss permissions mit dem Präfix Null (0) versehen werden. Zeichenketten wie etwa "g+w" funktionieren nicht korrekt.

<?php
chmod
("/einverzeichnis/einedatei", 755); // dezimal; wahrscheinlich falsch
chmod("/einverzeichnis/einedatei", "u+rwx,go+rx"); // Zeichenkette; falsch
chmod("/einverzeichnis/einedatei", 0755); // oktal; richtiger Wert für den Modus
?>

Der Parameter permissions besteht aus drei oktalen Zifferkomponenten, die die Zugriffsberechtigungen für den Besitzer, für die Gruppe, in der der Besitzer ist, und für alle anderen in dieser Reihenfolge festlegen. Eine Komponete kann durch Addition der benötigten Rechte für das jeweilige Ziel berechnet werden. Die Ziffer 1 bedeutet, dass man Ausführrechte gewährt, die Ziffer 2 bedeutet, dass die Datei beschreibbar ist, die Ziffer 4 bedeutet, dass die Datei lesbar ist. Addieren Sie diese Zahlen, um die benötigten Rechte anzugeben. In unixoiden Betriebssystemen können Sie mit 'man 1 chmod' und 'man 2 chmod' mehr über diese Modi lesen.

<?php
// Lese- und Schreibrechte für den Besitzer, keine für alle anderen
chmod("/somedir/somefile", 0600);

// Lese- und Schreibrechte für den Besitzer, Leserechte für alle anderen
chmod("/somedir/somefile", 0644);

// Alle Rechte für den Besitzer, Lese- und Ausführrechte für andere
chmod("/somedir/somefile", 0755);

// Alle Rechte für den Besitzer, Lese- und Ausführrechte für die Gruppe
chmod("/somedir/somefile", 0750);
?>

Rückgabewerte

Gibt bei Erfolg true zurück. Bei einem Fehler wird false zurückgegeben.

Fehler/Exceptions

Bei einem Fehler wird ein E_WARNING ausgegeben.

Anmerkungen

Hinweis:

Der aktuelle Nutzer ist der Nutzer, unter dem PHP läuft. Dies ist möglicherweise nicht der gleiche Nutzer wie der, der für den Shell- oder FTP-Zugang verwendet wird. Auf den meisten Betriebssystemen können die Zugriffsrechte nur durch den Besitzer der Datei geändert werden.

Hinweis: Diese Funktion kann nicht mit entfernten Dateien arbeiten, da der Zugriff auf die Datei, die bearbeitet werden soll, über das Dateisystem des Servers möglich sein muss.

Siehe auch

  • chown() - Ändert den Eigentümer einer Datei
  • chgrp() - Ändert die Gruppenzugehörigkeit einer Datei
  • fileperms() - Liefert die Zugriffsrechte einer Datei
  • stat() - Sammelt Informationen über eine Datei
To Top