Heim Backend-Entwicklung PHP-Tutorial Einführung in die PHP-Funktion – fileperms(): Dateiberechtigungen abrufen

Einführung in die PHP-Funktion – fileperms(): Dateiberechtigungen abrufen

Jul 25, 2023 pm 03:36 PM
php函数 php函数介绍—fileperms(): 获取文件权限 fileperms()

PHP-Funktionseinführung – fileperms(): Dateiberechtigungen abrufen

In der PHP-Entwicklung müssen wir manchmal Informationen zu Dateiberechtigungen einholen, z. B. um festzustellen, ob die Datei lesbar, beschreibbar oder ausführbar ist. Die PHP-Funktion fileperms() kann uns dabei helfen, diese Funktion zu erreichen. In diesem Artikel werden die Verwendung und Beispiele der Funktion fileperms() im Detail vorgestellt.

Die Funktion fileperms() wird verwendet, um die Berechtigungen der Datei zu erhalten. Sein Prototyp lautet wie folgt:

string fileperms (string $filename)

wobei $filename der Dateipfad ist, um Berechtigungsinformationen zu erhalten. Die Funktion gibt eine Zeichenfolge zurück, die die Berechtigungen der Datei darstellt.

Hier ist ein einfaches Beispiel, das zeigt, wie man die Funktion fileperms() verwendet, um die Berechtigungen einer Datei zu erhalten:

1

2

3

4

5

<?php

    $filename = 'test.txt';

    $perms = fileperms($filename);

    echo "文件{$filename}的权限是:{$perms}";

?>

Nach dem Login kopieren

In diesem Beispiel haben wir test.txt als Datei verwendet, um Berechtigungen zu erhalten. Die von der Funktion fileperms() zurückgegebenen Berechtigungsinformationen werden in der Variablen $perms gespeichert und dann über die Echo-Anweisung an den Benutzer ausgegeben.

Wenn wir den obigen Code ausführen, könnte die Ausgabe so aussehen:

1

文件test.txt的权限是:33204

Nach dem Login kopieren

In diesem Beispiel können wir sehen, dass die von der Funktion zurückgegebene Berechtigung eine Ganzzahl ist. Tatsächlich stellt diese Ganzzahl die Berechtigungen der Datei dar, wobei die unteren 9 Bits zur Identifizierung der Lese-, Schreib- und Ausführungsberechtigungen der Datei verwendet werden. Darunter:

  • Die erste Ziffer gibt an, ob es ausführbar ist;
  • Die zweite Ziffer gibt an, ob es geschrieben werden kann;
  • Die dritte Ziffer gibt an, ob es lesbar ist.

Die zurückgegebene Ganzzahl verwendet unterschiedliche Bits im Speicher, um diese drei Berechtigungen zu speichern. Daher müssen einige Bitoperationen verwendet werden, um die spezifischen Berechtigungen zu erhalten.

Hier ist eine Hilfsfunktion, die die von fileperms() zurückgegebene Ganzzahl in eine lesbare Berechtigungszeichenfolge umwandelt:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

<?php

    function format_perms($perms) {

        $result = '';

        if (($perms & 0xC000) == 0xC000) {

            $result .= 's';

        } elseif (($perms & 0xA000) == 0xA000) {

            $result .= 'l';

        } elseif (($perms & 0x8000) == 0x8000) {

            $result .= '-';

        } elseif (($perms & 0x6000) == 0x6000) {

            $result .= 'b';

        } elseif (($perms & 0x4000) == 0x4000) {

            $result .= 'd';

        } elseif (($perms & 0x2000) == 0x2000) {

            $result .= 'c';

        } elseif (($perms & 0x1000) == 0x1000) {

            $result .= 'p';

        } else {

            $result .= 'u';

        }

     

        if (($perms & 0x0100) == 0x0100) {

            $result .= 'r';

        } else {

            $result .= '-';

        }

     

        if (($perms & 0x0080) == 0x0080) {

            $result .= 'w';

        } else {

            $result .= '-';

        }

     

        if (($perms & 0x0040) == 0x0040) {

            if ($perms & 0x0800) {

                $result .= 's';

            } else {

                $result .= 'x';

            }

        } else {

            if (($perms & 0x0800) == 0x0800) {

                $result .= 'S';

            } else {

                $result .= '-';

            }

        }

     

        if (($perms & 0x0020) == 0x0020) {

            $result .= 'r';

        } else {

            $result .= '-';

        }

     

        if (($perms & 0x0010) == 0x0010) {

            $result .= 'w';

        } else {

            $result .= '-';

        }

     

        if (($perms & 0x0008) == 0x0008) {

            if ($perms & 0x0400) {

                $result .= 't';

            } else {

                $result .= 'x';

            }

        } else {

            if (($perms & 0x0400) == 0x0400) {

                $result .= 'T';

            } else {

                $result .= '-';

            }

        }

     

        if (($perms & 0x0004) == 0x0004) {

            $result .= 'r';

        } else {

            $result .= '-';

        }

     

        if (($perms & 0x0002) == 0x0002) {

            $result .= 'w';

        } else {

            $result .= '-';

        }

     

        if (($perms & 0x0001) == 0x0001) {

            $result .= 'x';

        } else {

            $result .= '-';

        }

     

        return $result;

    }

     

    $filename = 'test.txt';

    $perms = fileperms($filename);

    $formatted_perms = format_perms($perms);

     

    echo "文件{$filename}的权限是:{$formatted_perms}";

?>

Nach dem Login kopieren

Wenn wir diesen Code ausführen, könnte die Ausgabe so aussehen:

1

文件test.txt的权限是:-rw-r--r--

Nach dem Login kopieren

In diesem Beispiel definieren wir eine Hilfsfunktion format_perms() wird bereitgestellt, um die von fileperms() zurückgegebene Ganzzahl in eine lesbare Berechtigungszeichenfolge umzuwandeln. Schließlich verwenden wir die Echo-Anweisung, um die formatierte Berechtigungszeichenfolge an den Benutzer auszugeben.

Zusammenfassung:

In der PHP-Entwicklung müssen wir häufig die Berechtigungsinformationen von Dateien einholen. Durch die Verwendung der Funktion fileperms() können wir ganz einfach die Berechtigungen einer Datei erhalten. Dieser Artikel beschreibt die Verwendung der Funktion fileperms() und stellt Beispielcode bereit. Mit dieser Funktion können wir sicherstellen, dass Vorgänge an Dateien den Berechtigungsanforderungen entsprechen.

Ich hoffe, dass Sie durch diesen Artikel die Funktion fileperms() besser verstehen und verwenden und dadurch Ihre PHP-Entwicklungsfähigkeiten verbessern können.

Das obige ist der detaillierte Inhalt vonEinführung in die PHP-Funktion – fileperms(): Dateiberechtigungen abrufen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Artikel -Tags

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie kann der Lazy-Loading-Effekt von Bildern durch PHP-Funktionen optimiert werden? Wie kann der Lazy-Loading-Effekt von Bildern durch PHP-Funktionen optimiert werden? Oct 05, 2023 pm 12:13 PM

Wie kann der Lazy-Loading-Effekt von Bildern durch PHP-Funktionen optimiert werden?

Wie kann die Speichernutzung durch PHP-Funktionen reduziert werden? Wie kann die Speichernutzung durch PHP-Funktionen reduziert werden? Oct 05, 2023 pm 01:45 PM

Wie kann die Speichernutzung durch PHP-Funktionen reduziert werden?

PHP veraltet: Funktion ereg_replace() ist veraltet – Lösung PHP veraltet: Funktion ereg_replace() ist veraltet – Lösung Aug 18, 2023 am 10:48 AM

PHP veraltet: Funktion ereg_replace() ist veraltet – Lösung

Ähnlichkeiten und Unterschiede zwischen PHP-Funktionen und Flutter-Funktionen Ähnlichkeiten und Unterschiede zwischen PHP-Funktionen und Flutter-Funktionen Apr 24, 2024 pm 01:12 PM

Ähnlichkeiten und Unterschiede zwischen PHP-Funktionen und Flutter-Funktionen

Einführung in PHP-Funktionen: Funktion strtr() Einführung in PHP-Funktionen: Funktion strtr() Nov 03, 2023 pm 12:15 PM

Einführung in PHP-Funktionen: Funktion strtr()

Zusammenfassung der Methoden zur Implementierung von Bildbearbeitungs- und Verarbeitungsfunktionen mithilfe von PHP-Bildverarbeitungsfunktionen Zusammenfassung der Methoden zur Implementierung von Bildbearbeitungs- und Verarbeitungsfunktionen mithilfe von PHP-Bildverarbeitungsfunktionen Nov 20, 2023 pm 12:31 PM

Zusammenfassung der Methoden zur Implementierung von Bildbearbeitungs- und Verarbeitungsfunktionen mithilfe von PHP-Bildverarbeitungsfunktionen

Vergleich von PHP-Funktionen mit Funktionen in anderen Sprachen Vergleich von PHP-Funktionen mit Funktionen in anderen Sprachen Apr 10, 2024 am 10:03 AM

Vergleich von PHP-Funktionen mit Funktionen in anderen Sprachen

Wie performant sind PHP-Funktionen? Wie performant sind PHP-Funktionen? Apr 18, 2024 pm 06:45 PM

Wie performant sind PHP-Funktionen?

See all articles