tutoriais mais recente desenvolvimento web
 

PHP flock() Function


<Completa PHP Sistema de Arquivos de Referência

Definição e Uso

Os flock() fechaduras de função ou versões de um arquivo.

Esta função retorna TRUE em caso de sucesso ou FALSE em caso de falha.

Sintaxe

flock(file,lock,block)

Parâmetro Descrição
file Requeridos. Especifica um arquivo aberto para bloquear ou liberação
lock Requeridos. Especifica que tipo de bloqueio de usar.

Valores possíveis:

  • LOCK_SH - bloqueio compartilhado (reader) . Permitir que outros processos para acessar o arquivo
  • LOCK_EX - bloqueio exclusivo (writer) . Impedir que outros processos de acessar o arquivo
  • LOCK_UN - liberar uma trava compartilhada ou exclusiva
  • LOCK_NB - Evita a bloquear outros processos ao bloquear
block Opcional. Definido como 1 para bloquear outros processos ao bloquear

Dicas e Notas

Note: Estes bloqueios só se aplicam ao processo PHP atual. Outros processos podem modificar ou apagar um arquivo bloqueado-PHP se as permissões permitem.

Note: flock() é obrigatório no Windows.

Tip: A trava é liberada também por fclose() , que é chamado automaticamente quando o script for concluído.


Exemplo

<?php

$file = fopen("test.txt","w+");

// exclusive lock
if (flock($file,LOCK_EX))
  {
  fwrite($file,"Write something");
  // release lock
  flock($file,LOCK_UN);
  }
else
  {
  echo "Error locking file!";
  }

fclose($file);
?>

<Completa PHP Sistema de Arquivos de Referência