310 of 410 menu

Συνάρτηση flock

Η συνάρτηση flock ορίζει ή αφαιρεί το κλείδωμα ενός αρχείου. Ως πρώτη παράμετρο δέχεται έναν δείκτη αρχείου, που ελήφθη μέσω fopen, ως δεύτερη παράμετρο - τον τύπο κλειδώματος (LOCK_SH, LOCK_EX ή LOCK_UN), και ως τρίτη προαιρετική παράμετρο - μια σημαία για μη μπλοκαριστική λειτουργία.

Σύνταξη

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

Παράδειγμα

Κλείδωμα αρχείου για αποκλειστική πρόσβαση (εγγραφή):

<?php $file = fopen("data.txt", "c+"); if (flock($file, LOCK_EX)) { ftruncate($file, 0); fwrite($file, "Νέα δεδομένα"); flock($file, LOCK_UN); } fclose($file); ?>

Παράδειγμα

Κοινόχρηστο κλείδωμα για ανάγνωση:

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

Παράδειγμα

Μη μπλοκαριστική προσπάθεια απόκτησης κλειδώματος:

<?php $file = fopen("data.txt", "c+"); if (flock($file, LOCK_EX | LOCK_NB, $would_block)) { if ($would_block) { echo "Το αρχείο είναι κλειδωμένο από άλλη διεργασία"; } else { fwrite($file, "Δεδομένα"); flock($file, LOCK_UN); } } fclose($file); ?>

Δείτε επίσης

  • τη συνάρτηση fopen,
    που ανοίγει ένα αρχείο
  • τη συνάρτηση fclose,
    που κλείνει ένα αρχείο
  • τη συνάρτηση is_writable,
    που ελέγχει τη δυνατότητα εγγραφής
Ελληνικά
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Χρησιμοποιούμε cookie για τη λειτουργία του ιστότοπου, την ανάλυση και την εξατομίκευση. Η επεξεργασία των δεδομένων γίνεται σύμφωνα με την Πολιτική Απορρήτου.
αποδοχή όλων ρύθμιση απόρριψη