(PHP 5 >= 5.1.0, PHP 7)
SplFileObject::flock — Bloqueo de ficheros portable
$operation
   [, int &$wouldblock
  ] ) : boolBloquea o desbloquea el fichero de la misma manera portable que flock().
operation
       operation es una operación de las siguientes:
       
LOCK_SH para adquirir un bloqueo compartido (lectura).
         
        LOCK_EX para adquirir un bloqueo exclusivo (escritura).
         
        LOCK_UN para liberar un bloqueo (compartido o exclusivo).
         
        LOCK_NB para no esperar mientras se adquiere el bloqueo.
         
        wouldblock
       Establecer a TRUE si el bloqueo hará que la función quede esperando (condición de errno EWOULDBLOCK).
      
   Devuelve TRUE en caso de éxito o FALSE en caso de error.
  
Ejemplo #1 Ejemplo de SplFileObject::flock()
<?php
$file = new SplFileObject("/tmp/bloqueado.txt", "w");
if ($file->flock(LOCK_EX)) { // adquirir un bloqueo exclusivo
    $file->ftruncate(0);     // truncar el fichero
    $file->fwrite("Escribir alguna cosa\n");
    $file->flock(LOCK_UN);   // liberar el bloqueo    
} else {
    echo "¡No se pudo obtener el bloqueo!";
}
?>
| Versión | Descripción | 
|---|---|
| 5.5.22, 5.6.6 | Añadido soporte para el parámetro wouldblocken
        Windows. | 
| 5.3.2 | Se eliminó el desbloqueo automático cuando se cierra el manejador de recursos del archivo. El desbloqueo ahora siempre tiene que hacerse manualmente. |