最新的Web開發教程
 

PHP flock() Function


<完整PHP文件系統參考

定義和用法

flock()函數鎖定或釋放文件。

該函數返回TRUE或FALSE的成功失敗。

句法

flock(file,lock,block)

參數 描述
file 需要。 指定打開的文件鎖定或釋放
lock 需要。 指定什麼樣的鎖的使用。

可能的值:

  • LOCK_SH -共享鎖(reader) 。 允許其他程序訪問文件
  • LOCK_EX -獨占鎖(writer) 。 訪問該文件防止其他進程
  • LOCK_UN - 釋放一個共享或排它鎖
  • LOCK_NB - 避免阻塞其它進程而鎖定
block 可選的。 設置為1以阻止其他流程,同時鎖定

提示和注意

Note:這些鎖僅適用於當前的PHP程序。 其他進程可以修改或刪除一個PHP鎖定的文件,如果權限允許。

Note: flock()是在Windows下強制性的。

Tip:該鎖被釋放也fclose()當劇本完成後自動調用。


<?php

$file = fopen("test.txt","w+");

// exclusive lock
if (flock($file,LOCK_EX))
  {
  fwrite($file,"Write something");
  // release lock
  flock($file,LOCK_UN);
  }
else
  {
  echo "Error locking file!";
  }

fclose($file);
?>

<完整PHP文件系統參考