310 of 410 menu

Functie flock

De functie flock stelt een bestandsvergrendeling in of wordt deze opgeheven. Als eerste parameter accepteert het een aanwijzer naar een bestand, verkregen via fopen, als tweede parameter het type vergrendeling (LOCK_SH, LOCK_EX of LOCK_UN), en als derde optionele parameter een vlag voor een niet-blokkerende operatie.

Syntaxis

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

Voorbeeld

Bestand vergrendelen voor exclusieve toegang (schrijven):

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

Voorbeeld

Gedeelde vergrendeling voor lezen:

<?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; ?>

Voorbeeld

Niet-blokkerende poging om een vergrendeling te verkrijgen:

<?php $file = fopen("data.txt", "c+"); if (flock($file, LOCK_EX | LOCK_NB, $would_block)) { if ($would_block) { echo "Bestand is vergrendeld door een ander proces"; } else { fwrite($file, "Data"); flock($file, LOCK_UN); } } fclose($file); ?>

Zie ook

  • de functie fopen,
    die een bestand opent
  • de functie fclose,
    die een bestand sluit
  • de functie is_writable,
    die de schrijfbaarheid controleert
Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren