English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

PHP Grundanleitung

PHP Fortgeschrittene Anleitung

PHP & MySQL

PHP Referenzhandbuch

Verwendung und Beispiel der PHP-flock() Funktion

    PHP Date/Time 参考手册

Die Funktion flock() kann Dateien sperren oder freigeben und gibt im Erfolgsfall true zurück, im Fehlerfall false.

Syntax

bool flock ( resource $handle , int $operation [, int &$wouldblock ] )

Die Funktion flock() ermöglicht uns, einfache Leser- und Schreibvorgänge durchzuführen/Writer-Modell, das fast auf allen Plattformen verwendet werden kann.

Kommentare und Hinweise

Kommentar: Diese Sperren werden nur im aktuellen PHP-Prozess verwendet. Wenn die Berechtigungen es erlauben, können andere Prozesse eine PHP-gesperrte Datei ändern oder löschen.-Gesperrte Datei.
Kommentar: flock() ist auf Windows obligatorisch.
Hinweis: Der Sperre-Vorgang kann durch fclose() freigegeben werden, der bei Beendigung des Skripts automatisch aufgerufen wird.

Parameter

ParameterBeschreibung
handle
Erforderlich. Bestimmt die geöffnete Datei, die gesperrt oder entsperrt werden soll.
operation
Erforderlich. Bestimmt den zu verwendenden Sperretyp.

Mögliche Werte:

  • LOCK_SH - Gemeinsame Sperre (Lesevorgang). Erlaubt den Zugriff anderer Prozesse auf die Datei.

  • LOCK_EX - Exklusivsperre (Schreibvorgang). Verhindert den Zugriff anderer Prozesse auf die Datei.

  • LOCK_UN - Lösen eines gemeinsamen oder exklusiven Schreibschutzes

  • LOCK_NB - Vermeiden Sie das Blockieren anderer Prozesse im Sperremodus.

    Diese Sperren werden nur im aktuellen PHP-Prozess verwendet und können, wenn die Berechtigungen es erlauben, von anderen Prozessen geändert oder gelöscht werden. Auf Windows ist diese Funktion obligatorisch. Wir können die Funktion fclose() verwenden, um den Sperre-Vorgang zu beenden, der bei Beendigung des Skripts automatisch aufgerufen wird.

wouldblock
Optional. Wenn auf 1wird blockiert, wenn gesperrt wird.

Online-Beispiel

Beispiel zur Verwendung der exklusiven Sperre LOCK_EX von fclock:

<?php
   $file = fopen("/PhpProject/sample.txt", "w+
   //Exklusivsperre
   if(flock($file, LOCK_EX)) {
      fwrite($file, "flock function");
      
       // Lösen des Schreibschutzes
      flock($file, LOCK_UN);
      echo $file;
   } else {
      echo "Datei sperren fehlgeschlagen!";
   }
   fclose($file);
?>

PHP Date/Time 参考手册