Overview
KB
Technical FAQ
PHP Manual
CSS2 Manual
HTML Manual
JS Guide
JS Reference
PhpDock Manual
Nu-Coder Manual
PhpExpress Manual
PHP Joomla
Development
Learn PHP
 
<SplFileObject::fgetssSplFileObject::fpassthru>
^SplFileObjectLast updated: Mon, 26 Oct 2026

SplFileObject::flock

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

SplFileObject::flock — Portable file locking

Description

public function SplFileObject::flock(int $operation, int &$wouldBlock = null): bool

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).

It is also possible to add LOCK_NB as a bitmask to one of the above operations, if flock() should not block during the locking attempt.

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!";
}
?>

See Also

  • flock() - Portable advisory file locking


<SplFileObject::fgetssSplFileObject::fpassthru>
^SplFileObjectLast updated: Mon, 26 Oct 2026