• PHP Video Tutorials

PHP - Function flock()



The flock() function can lock or release a file, and it can return true on success or false on failure.

Syntax

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

The flock() function allows us to perform a simple reader/writer model that can be used on virtually every platform.

The possible locks are LOCK_SH:Shared lock (reader). Allow other processes to access the file, LOCK_EX: Exclusive lock.Prevent other processes from accessing file, LOCK_UN: Release a shared or exclusive lock, and LOCK_NB: Avoids blocking other processes while locking.

These locks are used only in the current PHP process, and if the permission allows, other processes can modify or delete the PHP-locked file. This function is mandatory under Windows. We can use the fclose () function to release the lock operation, which can be automatically called when the script execution is completed.

Example

<?php
   $file = fopen("/PhpProject/sample.txt", "w+");

   // exclusive lock
   if(flock($file, LOCK_EX)) {
      fwrite($file, "flock function");
      
   // release lock
      flock($file, LOCK_UN);
      echo $file;
   } else {
      echo "Error locking file!";
   }
   fclose($file);
?>
php_function_reference.htm
Advertisements