310 of 410 menu

Funktion flock

Die Funktion flock setzt oder entfernt eine Dateisperre. Als ersten Parameter erwartet sie einen Dateizeiger, erhalten via fopen, als zweiten Parameter die Art der Sperre (LOCK_SH, LOCK_EX oder LOCK_UN) und als dritten optionalen Parameter ein Flag für einen nicht-blockierenden Vorgang.

Syntax

flock(resource $handle, int $operation, int &$would_block = null): bool

Beispiel

Datei für exklusiven Zugriff (Schreiben) sperren:

<?php $file = fopen("data.txt", "c+"); if (flock($file, LOCK_EX)) { ftruncate($file, 0); fwrite($file, "New data"); flock($file, LOCK_UN); } fclose($file); ?>

Beispiel

Gemeinsame Sperre (Shared Lock) zum Lesen:

<?php $file = fopen("data.txt", "r"); if (flock($file, LOCK_SH)) { $content = fread($file, filesize("data.txt")); flock($file, LOCK_UN); } fclose($file); echo $content; ?>

Beispiel

Nicht-blockierender Versuch, eine Sperre zu erhalten:

<?php $file = fopen("data.txt", "c+"); if (flock($file, LOCK_EX | LOCK_NB, $would_block)) { if ($would_block) { echo "File is locked by another process"; } else { fwrite($file, "Data"); flock($file, LOCK_UN); } } fclose($file); ?>

Siehe auch

  • die Funktion fopen,
    die eine Datei öffnet
  • die Funktion fclose,
    die eine Datei schließt
  • die Funktion is_writable,
    die die Schreibrechte prüft
Deutsch
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wir verwenden Cookies für den Betrieb der Website, Analyse und Personalisierung. Die Datenverarbeitung erfolgt gemäß der Datenschutzerklärung.
alle akzeptieren anpassen ablehnen