最新的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文件系统参考