PHP 基础:PHP flock 文件锁
以下是对 php 中文件锁函数
flock
函数用法简介
flock
(PHP 4, PHP 5)
flock
—
轻便的咨询文件锁定
说明
bool
flock
( int
$handle
, int
$operation
[, int &
$wouldblock
] )
PHP 支持以咨询方式(也就是说所有访问程序必须使用同一方式锁定, 否则它不会工作)
锁定全部文件的一种轻便方法。
Note:
在 Windows
下
flock
()
将会强制执行。
flock
()
操作的 handle 必须是一个已经打开的文件指针。operation
可以是以下值之一:
要取得共享锁定(读取的程序),将 operation
设为 LOCK_SH(PHP 4.0.1 以前的版本设
置为 1
)。
要取得独占锁定(写入的程序),将 operation
设为 LOCK_EX(PHP 4.0.1 以前的版本中
设置为 2
)。
要释放锁定(无论共享或独占),将 operation
设为 LOCK_UN(PHP 4.0.1 以前的版本中
设置为 3
)。
如果不希望
flock
()
在锁定时堵塞,则给 operation
加上 LOCK_NB(PHP 4.0.1 以前的版本
中设置为 4
)。
flock
() 允许执行一个简单的可以在任何平台中使用的读取/
写入模型(包括大部分的 Unix
派生版和甚至是 Windows)。如果锁定会堵塞的话(EWOULDBLOCK 错误码情况下),
可选的第三个参数会被设置为 TRUE
。锁定操作也可以被 fclose() 释放(代码执行完毕时
也会自动调用)。
成功时返回 TRUE
, 或者在失败时返回 FALSE.
Example #1
flock
()
例子
代码如下:
<?php