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

# streamWrapper::stream_lock

(PHP 5, PHP 7, PHP 8)

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

### 説明

public function 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` を追加することもできます。 ロック取得の試行中にブロックさせたくない場合に使います (Windows ではサポートしていません)。

### 戻り値

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

### エラー / 例外

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

### 参考

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

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open