Inhaltsverzeichnis
Verwenden Sie Fileperms (), um Rohberechtigungswerte zu erhalten
Überprüfen Sie den spezifischen Zugriff mit is_readable (), is_writable (), is_execable ()
Kombinieren Sie sich mit STAT () für detaillierte Informationen
Heim Backend-Entwicklung PHP-Tutorial Wie überprüfe ich Dateiberechtigungen in PHP?

Wie überprüfe ich Dateiberechtigungen in PHP?

Sep 22, 2025 am 06:27 AM
php Dateiberechtigungen

Verwenden Sie Fileperms (), um Dateiberechtigungen als Ganzzahl zu erhalten und sie mit Sprintf ('%O') zu formatieren, um die Berechtigungen im Unix-Stil wie 0644 anzuzeigen. Für praktische Zugriffsüberprüfungen verwenden Sie is_readable (), is_writable (), oder is_execable (), wenn das Skript das Skript lesen, schreiben kann oder die Datei ausführen kann. Diese Funktionen hängen vom PHP -Prozessbenutzer ab, wie z. B. dem Webserverbenutzer, nicht vom Systembenutzer.

Wie überprüfe ich Dateiberechtigungen in PHP?

Um die Dateiberechtigungen in PHP zu überprüfen, können Sie integrierte Funktionen verwenden, die Informationen über den Modus und die Zugriffsrechte einer Datei enthalten. Der häufigste und effektivste Weg ist die Verwendung der fileperms () -Funktion zusammen mit anderen verwandten Funktionen für eine bessere Lesbarkeit.

Verwenden Sie Fileperms (), um Rohberechtigungswerte zu erhalten

Die Funktion fileperms () gibt die Berechtigungsbits einer Datei als Ganzzahl zurück. Dieser Wert beinhaltet mehr als nur Berechtigungen (wie den Dateityp), sodass er häufig mit bitgewiehenen Operationen kombiniert wird, um nur den Berechtigungsteil zu extrahieren.

Beispiel:
 echo substr (Sprintf ('%o', fileperms ('example.txt'), -4);

Dies gibt ungefähr 0644 aus, was die Standard-Berechtigungen im Unix-Stil darstellt (Eigentümer, Gruppe, andere).

Überprüfen Sie den spezifischen Zugriff mit is_readable (), is_writable (), is_execable ()

Wenn Sie nicht den vollständigen Berechtigungsmodus benötigen, aber wissen möchten, ob ein Skript bestimmte Aktionen ausführen kann, verwenden Sie diese booleschen Funktionen:

  • is_readable ('Dateiname') - Gibt true zurück, wenn die Datei gelesen werden kann
  • is_writable ('Dateiname') - Gibt true zurück, wenn die Datei auf geschrieben werden kann
  • IS_EXECABLE ('Dateiname') - Gibt true zurück, wenn die Datei ausführbar ist
Beispiel:
 if (is_readable ('config.php') {
    Echo "Datei ist lesbar.";
}

Kombinieren Sie sich mit STAT () für detaillierte Informationen

Die Funktion STAT () gibt ein Array zurück, das verschiedene Dateidetails enthält, einschließlich Berechtigungen über den "Modus" -Endex.

 $ info = stat ('Beispiel.txt');
$ Perms = $ info ['Modus'] & 0777; // Die letzten 9 Bit für RWX extrahieren
Echo Sprintf ('O', $ Perms);

Diese Methode gibt Ihnen eine Steuerung auf niedriger Ebene und ist nützlich, wenn Sie mehrere Dateiattribute gleichzeitig analysieren.

Verwenden Sie im Grunde genommen Fileperms () mit Formatierung für die Anzeige oder die IS_* -Funktionen für praktische Zugriffsüberprüfungen. Beachten Sie, dass die Ergebnisse vom PHP -Prozessbesitzer (z. B. Webserverbenutzer) abhängen, nicht vom Systembenutzer, der das Skript manuell ausführt.

Das obige ist der detaillierte Inhalt vonWie überprüfe ich Dateiberechtigungen in PHP?. 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ße KI -Werkzeuge

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Stock Market GPT

Stock Market GPT

KI-gestützte Anlageforschung für intelligentere Entscheidungen

Heiße Werkzeuge

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 überprüfen Sie, ob eine E -Mail -Adresse in PHP gültig ist? Wie überprüfen Sie, ob eine E -Mail -Adresse in PHP gültig ist? Sep 21, 2025 am 04:07 AM

UseFilter_var () tovalateMailSyntaxandCheckdnsrr () tuverifyDomainMxRecords.Example: $ EMAMME = "User@example.com"; if (f ilter_var ($ mail, filter_validate_email) && checkDnsrr (explode ('@', $ mail) [1], 'mx') {echo "validandDeliverableMail & qu

Kook Voice Platform Offizielle Website _ PC -Client und Webversion Login -Portal Kook Voice Platform Offizielle Website _ PC -Client und Webversion Login -Portal Sep 20, 2025 am 11:30 AM

Die offizielle Website der Kook Voice-Plattform lautet https://www.kookapp.cn/, die den Login von PC-Client und Web-Version unterstützt und Multi-Terminal-Berichterstattung für Windows, Android und iOS bietet. Benutzer können den Client herunterladen oder direkt über den Browser darauf zugreifen.

Wie fusioniere ich zwei Arrays in PHP? Wie fusioniere ich zwei Arrays in PHP? Sep 21, 2025 am 12:26 AM

Usearray_merge () tocombinearrays, überschreibende DuplicatestringKeysandReindexingnumericKeys;

Wie erstelle ich eine tiefe Kopie oder Klon eines Objekts in PHP? Wie erstelle ich eine tiefe Kopie oder Klon eines Objekts in PHP? Sep 21, 2025 am 12:30 AM

UseUnSerialize (Serialize ($ OBJ)) FODEPCOPYPYWIEDALLDATAISSERIALIZIABLE; Andernfalls implementieren Sie __Clone () TomanuelleduplicatenestoBjectSandavoidSharedReferences.

Wie verwende ich Namespaces in einem PHP -Projekt? Wie verwende ich Namespaces in einem PHP -Projekt? Sep 21, 2025 am 01:28 AM

NamespacesinphporganizeCodeAndPreventnamingConflictsByGroupingclasses, Schnittstellen, Funktionen und Constantsunderaspecificname.2.DefineAnaceStHenameSpaceKeyWorthetopoFafile, gefolgt von BythenameSpacename, solcheasapp \ controllers.3.

Wie nenne ich einen übergeordneten Konstruktor in PHP? Wie nenne ich einen übergeordneten Konstruktor in PHP? Sep 21, 2025 am 03:43 AM

WhenextendingaclassinPHP,callparent::__construct()toensuretheparent'sinitializationlogicruns.1.Iftheparentclassconstructorsetsupessentialproperties,skippingthiscallmayresultinincompleteobjectinitialization.2.Useparent::__construct()insidethechild’sco

Wie aktualisiere ich einen Datensatz in einer Datenbank mit PHP? Wie aktualisiere ich einen Datensatz in einer Datenbank mit PHP? Sep 21, 2025 am 04:47 AM

ToupDateadatabaserecordinphp, FirstConnectusepdoOrmysqli, ThenuSePreparedStatementStoExexexeSecuresQLUPDateQuery.example: $ pdo = newpdo ("MySQL: Host = LocalHost; dbname = your_database", $ username, $ username, $ username);

Wie überprüfe ich Dateiberechtigungen in PHP? Wie überprüfe ich Dateiberechtigungen in PHP? Sep 22, 2025 am 06:27 AM

UseFileperms () TogetFilePermissionsaSanIngerandFormatitusingSPrintf ('%o') TodisplayUnix-Stil-Like0644.forpracticalaccescesCescks, Uses_readable (), is_writable (), oris_executable

See all articles