PHP 基础教程

PHP 表单

PHP 高级教程

PHP 7 新特性

PHP 数据库

PHP XML

PHP 与 AJAX

PHP 参考手册

original icon
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.knowledgedict.com/tutorial/php-func-filesystem-flock.html

PHP flock() 函数

PHP 5 Filesystem 函数 PHP 5 Filesystem 函数


完整的 PHP Filesystem 参考手册

定义和用法

flock() 函数锁定或释放文件。

如果成功,该函数返回 TRUE。如果失败,则返回 FALSE。

语法



flock(file,lock,block)

 
参数 描述
file 必需。规定要锁定或释放的已打开的文件。
lock 必需。规定要使用哪种锁定类型。

可能的值:

  • LOCK_SH - 共享锁定(读取的程序)。允许其他进程访问该文件。
  • LOCK_EX - 独占锁定(写入的程序)。防止其他进程访问该文件。
  • LOCK_UN - 释放一个共享锁定或独占锁定
  • LOCK_NB - 锁定的情况下避免阻塞其他进程。
block 可选。若设置为 1,则当进行锁定时阻塞其他进程。
 

提示和注释

注释:这些锁仅在当前的 PHP 进程中使用。如果权限允许,其他的进程可修改或删除一个 PHP-locked 文件。

注释:flock() 在 Windows 下具有强制性。

提示:可以通过 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 Filesystem 参考手册