Wie geht PHP mit Dateiberechtigungen um? (Codebeispiel)

青灯夜游
Freigeben: 2023-04-05 17:18:02
Original
2675 Leute haben es durchsucht

Dateiberechtigungen beziehen sich auf die Vorgänge, die an bestimmten Dateien im System ausgeführt werden können, z. B. Lesen, Schreiben oder Ausführen der Datei. Im folgenden Artikel erfahren Sie, wie Sie Dateiberechtigungen mit PHP überprüfen und ändern. Ich hoffe, dass er Ihnen weiterhilft.

Wie geht PHP mit Dateiberechtigungen um? (Codebeispiel)

PHP gewährt hinter den Kulissen automatisch die entsprechenden Berechtigungen. Wenn Sie beispielsweise eine neue Datei zum Schreiben erstellen, erteilt PHP ihr automatisch Lese- und Schreibberechtigungen. Darüber hinaus bietet PHP einige nützliche Funktionen zum Überprüfen und Ändern von Dateiberechtigungen.

Wie überprüfe ich Dateiberechtigungen in PHP?

PHP stellt uns drei Funktionen zur Verfügung, um Dateiberechtigungen zu überprüfen:

is_readable()-Funktion: Wird verwendet, um zu prüfen, ob eine Leseberechtigung für die Datei vorliegt abgerufen wird, wird true zurückgegeben, andernfalls wird false zurückgegeben.

is_writable()-Funktion: Wird verwendet, um zu überprüfen, ob eine Schreibberechtigung vorliegt. Wenn das Schreiben in die Datei zulässig ist, wird „true“ zurückgegeben, andernfalls wird „false“ zurückgegeben.

is_executable()-Funktion: Wird verwendet, um zu prüfen, ob eine Ausführungsberechtigung vorliegt. Wenn die Datei ausgeführt werden darf, wird „true“ zurückgegeben, andernfalls wird „false“ zurückgegeben.

Codebeispiel:

<?php 
header("content-type:text/html;charset=utf-8");
$fn = &#39;demo/test.txt&#39;;
 
$msg = is_readable($fn) ? $msg = &#39;文件是可读的&#39;
 : $msg = &#39;文件不可读&#39;;
echo $msg . &#39;<br/>&#39;;
 
$msg = is_writable($fn) ? $msg = &#39;文件是可写的&#39;
 : $msg = &#39;文件不可写&#39;;
 
echo $msg . &#39;<br/>&#39;;
 
$msg = is_executable($fn) ? $msg = &#39;文件是可执行的&#39;
   : $msg = &#39;文件不可执行&#39;;
 
echo $msg . &#39;<br/>&#39;;
?>
Nach dem Login kopieren

Ausgabe:

Wie geht PHP mit Dateiberechtigungen um? (Codebeispiel)

Zusätzlich zu diesen Funktionen stellt PHP auch die Funktion fileperms() zur Verfügung, die zurückgibt Eine Ganzzahl, die die für eine bestimmte Datei festgelegten Berechtigungen darstellt.

<?php 
$fn = &#39;demo/test.txt&#39;;
$fp = fileperms($fn);

echo substr(sprintf(&#39;%o&#39;, $fp), -4); //0666
?>
Nach dem Login kopieren

Ausgabe:

0666
Nach dem Login kopieren

Wie ändere ich Dateiberechtigungen in PHP?

Um Dateiberechtigungen oder -modi zu ändern, müssen Sie die Funktion chmod() verwenden. Zuerst müssen Sie den Dateinamen übergeben, für den Sie Berechtigungen festlegen möchten. Anschließend müssen Sie die erforderlichen Berechtigungen angeben. Die Funktion chmod() gibt true zurück, wenn die Berechtigungen erfolgreich festgelegt wurden, andernfalls gibt sie false zurück.

Dateiberechtigungen werden durch dreistellige Oktalzahlen dargestellt:

● Die erste Zahl gibt an, was der Eigentümer der Datei mit der Datei tun kann.

● Die zweite Zahl gibt die Vorgänge an, die die Eigentümergruppe der Datei für die Datei ausführen kann.

● Die dritte Zahl gibt die Aktionen an, die jede Person an der Datei ausführen kann.

Die folgende Tabelle zeigt den Wert jeder Zahl, die Zugriffsrechte für einen bestimmten Benutzer (Benutzer, Benutzergruppe oder alle) darstellt:

● 0: Lesen, Schreiben oder Ausführen < ist nicht möglich 🎜>

● 1: Kann nur ausführen

● 2: Kann nur schreiben

● 3: Kann schreiben und ausführen

● 4: Kann nur lesen

● 5: Kann lesen und ausführen

● 6: Kann lesen und schreiben

● 7: Kann lesen, schreiben und ausführen

Zum Beispiel zum Festlegen Der Ersteller oder Besitzer der Datei kann nur vom Autor gelesen werden, und andere verwenden wir den folgenden Code:

<?php 
$fn = &#39;demo/test.txt&#39;;
//更改权限
chmod($fn, 0444);

//读取权限
$msg = is_readable($fn) ? $msg = &#39;文件是可读的&#39;
 : $msg = &#39;文件不可读&#39;;
echo $msg . &#39;<br/>&#39;;
 
$msg = is_writable($fn) ? $msg = &#39;文件是可写的&#39;
 : $msg = &#39;文件不可写&#39;;
 
echo $msg . &#39;<br/>&#39;;
 
$msg = is_executable($fn) ? $msg = &#39;文件是可执行的&#39;
   : $msg = &#39;文件不可执行&#39;;
 
echo $msg . &#39;<br/>&#39;;
?>
Nach dem Login kopieren
Ausgabe:

Wie geht PHP mit Dateiberechtigungen um? (Codebeispiel)

Hinweis: wir Setzen Sie 0 vor 644 und bitten Sie PHP, es als Oktalzahl zu interpretieren.

Empfohlene Video-Tutorials: „

PHP-Tutorial

Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Lernen aller hilfreich sein wird. Weitere spannende Inhalte finden Sie in den entsprechenden Tutorial-Kolumnen auf der chinesischen PHP-Website! ! !

Das obige ist der detaillierte Inhalt vonWie geht PHP mit Dateiberechtigungen um? (Codebeispiel). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage