La fonction flock() verrouille ou libère un fichier.
En cas de succès, la fonction renvoie TRUE. En cas d'échec, renvoie FALSE.
troupeau (fichier, verrou, bloc)
paramètre | décrire |
---|---|
déposer | Requis. Spécifie un fichier ouvert à verrouiller ou à libérer. |
verrouillage | Requis. Spécifie le type de verrou à utiliser. Valeurs possibles : LOCK_SH - verrou partagé (programme de lecture). Autorisez d’autres processus à accéder au fichier. LOCK_EX - Verrouillage exclusif (programme d'écriture). Empêchez d’autres processus d’accéder au fichier. LOCK_UN - Libérer un verrou partagé ou exclusif LOCK_NB - Évitez de bloquer d'autres processus lorsqu'ils sont verrouillés. |
bloc | Facultatif. S'il est défini sur 1, bloque les autres processus pendant le verrouillage. |
Remarque : Ces verrous ne sont utilisés que dans le processus PHP actuel. Si les autorisations le permettent, d'autres processus peuvent modifier ou supprimer un fichier verrouillé par PHP.
Remarque : flock() est obligatoire sous Windows.
Astuce : Vous pouvez libérer l'opération de verrouillage via fclose(), qui sera appelée automatiquement une fois l'exécution du script terminée.
<?php$file = fopen("test.txt","w+");// exclusif lockif (flock($file,LOCK_EX)) { fwrite($file,"Write Something"); // libère le verrou flock( $file,LOCK_UN); }else { echo "Erreur de verrouillage du fichier !"; }fclose($file);?>