ファイルのアドバイザリ・ロック

# streamWrapper::stream_lock

(PHP 5, PHP 7)

streamWrapper::stream_lock — ファイルのアドバイザリ・ロック

### 説明

public streamWrapper::stream_lock ( int `$operation` ) : bool

このメソッドは、flock() に対応してコールされます。また file_put_contents() (`flags` が `LOCK_EX` を含む場合)、 stream_set_blocking() がコールされたときやストリームを閉じるとき (`LOCK_UN`) にもコールされます。

### パラメータ

`operation`

  `operation` は以下のいずれかとなります。

  - `LOCK_SH` 共有ロック (読み込み) を確保します。
  - `LOCK_EX` 排他ロック (書き込み) を確保します。
  - `LOCK_UN` ロック (共有あるいは排他) を開放します。
  - `LOCK_NB` flock() によるロック中にブロックしない (Windows ではサポートしていません)。

### 返り値

成功した場合に `TRUE` を、失敗した場合に `FALSE` を返します。

### エラー / 例外

このメソッドのコールに失敗した場合 (実装されていないなど) は `E_WARNING` を発行します。

### 参考

- stream_set_blocking() - ストリームのブロックモードを有効にする / 解除する
- flock() - 汎用のファイルロックを行う