PHP flock() function
Definition and Usage
The flock() function locks or releases a file.
Returns true on success. Returns false on failure.
Syntax
flock(Beschreibung der flock() Operation,Lock,block)
Parameter | Description |
---|---|
Beschreibung der flock() Operation | Required. Specifies the opened file to be locked or released. |
Lock | Required. Specifies which locking type to use. |
block | Optional. If set to 1 or true, it will block other processes when locking. |
说明
Anweisung Beschreibung der flock() Operation file
Lock Muss ein bereits geöffneter Dateipointer sein.
- Der Parameter kann einer der folgenden Werte sein: Lock auf LOCK_SH (in Versionen vor PHP 4.0.1 auf 1 eingestellt).
- Um einen exklusiven Lock (Schreibprogramm) zu erhalten, geben Sie Lock auf LOCK_EX (in Versionen vor PHP 4.0.1 auf 2 eingestellt).
- Um den Lock freizugeben (egal ob gemeinsam oder exklusiv), geben Sie Lock auf LOCK_UN (in Versionen vor PHP 4.0.1 auf 3 eingestellt).
- Wenn flock() nicht blockieren soll, wenn gesperrt wird, geben Sie Lock mit LOCK_NB (in Versionen vor PHP 4.0.1 auf 4 eingestellt).
Hinweise und Kommentare
Hinweis:Durch fclose() Zur Freigabe der Lock-Operation wird dies ebenfalls automatisch aufgerufen, wenn der Code ausgeführt wird.
Anmerkung:Da flock() einen Dateipointer benötigt, kann möglicherweise ein spezieller gesperrter Dateipuffer verwendet werden, um den Zugriff auf Dateien zu schützen, die im Schreibmodus geöffnet werden sollen (im fopen()-Funktion "w" oder "w+" hinzufügen).
Beispiel
<?php $file = fopen("test.txt","w+"); // Exklusiver Lock if (flock($file,LOCK_EX)) { fwrite($file,"Etwas schreiben"); // Freigabe des Locks flock($file,LOCK_UN); } else { echo "Datei sperren fehlgeschlagen!"; } fclose($file); ?>