在开发中常常会遇到对文件的操作,对于初学者来说,往往关注的是对功能的实现,忽略了整个技术栈的连贯性质,因为WEB应用一般都是多线程和多进程的应用,所有的执行路径都可能同时会有多个客户端的请求,这就是多并发,如果程序中有对公共数据进行操作,那么在多并发中就要使用到锁的概念。
一、功能说明
LOCK_NB
选项进行控制。二、语法结构
flock ( resource $handle , int $operation [, int &$wouldblock ] ) : bool //支持版本(PHP 4, PHP 5, PHP 7)
参数 | 说明 | 使用说明 |
---|---|---|
handle | 文件系统指针,是典型地由 fopen() 创建的 resource(资源) | |
operation | 可以是以下值之一:
|
|
wouldblock | 如果锁定会堵塞的话(EWOULDBLOCK 错误码情况下),可选的第三个参数会被设置为 TRUE。(Windows 上不支持) | 经过测试Windows 上确实不支持此参数,其他平台暂未测试 |