Derniers tutoriels de développement web
 

PHP flock() Function


<Complete PHP Référence Filesystem

Définition et utilisation

Le flock() fonction verrouille ou libère un fichier.

Cette fonction retourne TRUE en cas de succès ou si une erreur survient.

Syntaxe

flock(file,lock,block)

Paramètre La description
file Champs obligatoires. Indique un fichier ouvert pour verrouiller ou libération
lock Champs obligatoires. Indique quel type de verrouillage à utiliser.

Valeurs possibles:

  • LOCK_SH - verrou partagé (reader) . Permettre à d'autres processus d'accéder au fichier
  • LOCK_EX - Verrouillage exclusif (writer) . Empêcher que d'autres processus d'accéder au fichier
  • LOCK_UN - Relâche un verrou partagé ou exclusif
  • LOCK_NB - Evite bloquant d'autres processus tout en verrouillant
block Optionnel. Réglez sur 1 à bloquer d'autres processus tout en verrouillant

Conseils et notes

Note: Ces verrous appliquent uniquement au processus PHP en cours. D'autres procédés peuvent modifier ou supprimer un fichier verrouillé PHP si les autorisations permettent.

Note: flock() est obligatoire sous Windows.

Tip: Le verrou est également par fclose() , qui est appelée automatiquement quand le script est terminé.


Exemple

<?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);
?>

<Complete PHP Référence Filesystem