SplFileObject::flock
SplFileObject::flock
(PHP 5 >= 5.1.0, PHP 7)
SplFileObject::flock — Portable file locking
Description
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
<?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 →
© 1997–2017 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.