首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

SplFileObject::flock

(PHP 5 >= 5.1.0, PHP 7)

SplFileObject::flock — Portable file locking

Description

代码语言:javascript
复制
public bool SplFileObject::flock ( int $operation [, int &$wouldblock ] )

Locks or unlocks the file in the same portable way as flock().

Parameters

operation

operation is one of the following:

  • LOCK_SH to acquire a shared lock (reader).
  • LOCK_EX to acquire an exclusive lock (writer).
  • LOCK_UN to release a lock (shared or exclusive).
  • LOCK_NB to not block while locking.

wouldblock

Set to TRUE if the lock would block (EWOULDBLOCK errno condition).

Return Values

Returns TRUE on success or FALSE on failure.

Examples

Example #1 SplFileObject::flock() example

代码语言:javascript
复制
<?php
$file?=?new?SplFileObject("/tmp/lock.txt",?"w");
if?($file->flock(LOCK_EX))?{?//?do?an?exclusive?lock
????$file->ftruncate(0);?????//?truncate?file
????$file->fwrite("Write?something?here\n");
????$file->flock(LOCK_UN);???//?release?the?lock????
}?else?{
????echo?"Couldn't?get?the?lock!";
}
?>

Changelog

Version

Description

5.5.22, 5.6.6

Added support for the wouldblock parameter on Windows.

5.3.2

The automatic unlocking when the file's resource handle is closed was removed. Unlocking now always has to be done manually.

See Also

  • flock() - Portable advisory file locking

← SplFileObject::fgetss

SplFileObject::fpassthru →

代码语言:txt
复制
 ? 1997–2017 The PHP Documentation Group

Licensed under the Creative Commons Attribution License v3.0 or later.

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com