bool flock (int fp, int operation [, int
wouldblock])
PHP は、恣意的にファイルをロックする汎用の手段を提供します。 (これは、アクセスする全プログラムが同一のロックの方法を使用する 必要があり、そうでない場合は動作しないことを意味します)
flock()は、fpを用いて 操作を行います。これは、オープンされたファイルポインタである必要が あります。operationは、次の値のどれかとなります。
共有ロック(読み手)とするには、operationに LOCK_SH(PHP 4.0.1より前の場合は1に設定します)をセットします。
排他的ロック(書き手)とするには、operationに LOCK_EX(PHP 4.0.1より前の場合は2に設定します)をセットします。
(共有または排他的)ロックを開放するには、operation にLOCK_UN(PHP 4.0.1より前の場合は3に設定します)をセットします。
ロック中に flock()でブロックを行いたくない場 合は、operation に LOCK_NB ( PHP 4.0.1 よ�以前の場合は 4 に設定します)を加えます。
flock()により、(ほとんどのUNIXやWindowsさえ含む) ほとんど全てのプラットフォームで使用可能な簡易な読み手/書き手モデルが 実現されます。 ロックをブロックモードとする場合(EWOULDBLOCK errno 条件)に オプションの3番目の引数にtrueを設定します。
flock() は成功時にtrue、 (例えばロックが確保できなかった場合等の)エラー時にfalseを返します。