flock() 関数は、ファイルをロックまたはロックの解除を行います。
この関数成功した場合はTRUE、失敗した場合はFALSEを返します.
flock(file,lock,block)
パラメータ | 説明 |
---|---|
file | 必須。ロックやロックを解除するオープンファイルを指定する |
lock | 必須。使用するロックの種類を指定する。 指定可能な値:
|
block | 任意。ロック中に他のプロセスをブロックする場合に 1 を設定する |
注: これらのロックは現在のPHPプロセスにのみ適用されます。パーミッションが許せば、 他のプロセスはPHPロックファイルを変更または削除できます。
注: flock() は、Windowsでは必須です。
チップ: fclose()もロックを解除します。これは、スクリプトの終了時に自動的に呼び出されます。
<?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);
?>