A função rebanho fornece uma capacidade de bloqueio de arquivos que permite que você a ler e escrever a partir de um arquivo . Ele vai trabalhar em quase todas as plataformas , incluindo a maioria dos sistemas operacionais Windows e Unix. Os passos seguintes irão ajudar na sua busca de informações sobre a função rebanho. Instruções
1
Aprenda a sintaxe . A sintaxe completa é : bool rebanho (resource $ handle , int $ operação [ , int & $ willblock ] ) . Handle pode ser qualquer ponteiro de arquivo aberto e operação indica o tipo de bloqueio. LOCK_EX adquire um bloqueio exclusivo para a escrita, LOCK_SH adquire um bloqueio compartilhado para leitura e LOCK_UN libera um bloqueio . Você também pode especificar LOCK_NB para evitar rebanho de bloquear o acesso , enquanto o arquivo está bloqueado . Willblock é um terceiro argumento opcional que será definido como TRUE se a condição de erro EWOULDBLOCK for atendida.
2
Note-se que o rebanho é portátil, o que significa que exige que todos os programas que acessam o arquivo para usar o mesmo método de bloqueio
3
Olhe para o exemplo a seguir para um caso simples : . $ fp = fopen ( " /tmp /temp.txt ", " w + "); //open o arquivo para gravação ; if ( flock ( $ fp , LOCK_EX )) //fazer um bloqueio exclusivo ; { ; fwrite ( $ fp , "Escreva algo para temp.txt \\ n"); flock ( $ fp , LOCK_UN ); //liberar o bloqueio ;} ; mais; { echo " incapaz de travar temp.txt ! ";} ; fclose ( $ fp )
4
Observe-se que o PHP irá automaticamente chamar fclose quando o script termina . Fclose também irá liberar o bloqueio .
5
Use um arquivo de bloqueio para proteger o acesso aos arquivos que você pretende abrir em modo de gravação. Isso é necessário porque o rebanho requer ponteiro para um arquivo.