chmod
(PHP 4, PHP 5, PHP 7, PHP 8)
chmod — Ändert den Modus für die Zugriffsrechte einer Datei
Beschreibung
$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, musspermissions
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() - Wechselt die Gruppenzugehörigkeit einer Datei
- fileperms() - Liefert die Zugriffsrechte einer Datei
- stat() - Sammelt Informationen über eine Datei