PHP マニュアル
前のページ |  | 次のページ

# XXXVI. ファイル改変監視関数（FAM)

# 導入

FAM はファイルやディレクトリを監視し、変更点を調査を行うアプリケーションに 通知します。FAM についての詳細な情報は http://oss.sgi.com/projects/fam/ で得られます。

PHP スクリプトは、この拡張モジュールにより提供される関数を用いて FAM に一連の ファイルを指定することができます。

FAM プロセスは、最初にアプリケーションから接続された時に開始され、 全ての接続がクローズされた時に終了します。

> 注意: この拡張モジュールは PECL レポジトリに移動 されており、以下のバージョン以降 PHP にバンドルされなくなっています。 PHP 5.1.0.

> 注意: この拡張モジュールは Windows 環境では利用できません。

# 要件

この拡張モジュールは、SGI が開発した FAM ライブラリの関数を使用しています。そのため、FAM ライブラリを ダウンロードしてインストールする必要があります。

# インストール手順

PHP の FAM サポートを使用するには、`--with-fam[=DIR]` を指定して PHP をコンパイルする 必要があります。DIR は lib および include ディレクトリを含む ディレクトリの場所です。

# 実行時設定

設定ディレクティブは定義されていません。

# リソース型

FAM モジュールでは二種類のリソース型を使用します。まず最初が FAM サービスとの接続を表すリソースで、これは fam_open() が返します。二番目はモニタリングリソースで、これは `fam_monitor_XXX` 関数が返します。

# 定義済み定数

以下の定数が定義されています。 この関数の拡張モジュールが PHP 組み込みでコンパイルされているか、 実行時に動的にロードされている場合のみ使用可能です。

表 1. FAM イベント定数

定数 | 説明
--- | ---
`FAMChanged` (integer) | ファイルあるいはディレクトリの、fstat(1) で取得できる値のうちの 何かが変更されました。
`FAMDeleted` (integer) | ファイルあるいはディレクトリが削除あるいはリネームされました。
`FAMStartExecuting` (integer) | 実行可能ファイルが実行されました。
`FAMStopExecuting` (integer) | 実行可能ファイルの実行が終了しました。
`FAMCreated` (integer) | ディレクトリ内にファイルが作成されました。
`FAMMoved` (integer) | このイベントは決して発生しません。
`FAMAcknowledge` (integer) | fam_cancel_monitor() に対する応答イベントです。
`FAMExists` (integer) | ファイルやディレクトリの監視を要求するイベントです。 ディレクトリが監視されている場合、ディレクトリおよびその中に 含まれるすべてのファイルについてのイベントが発生します。
`FAMEndExist` (integer) | 最後の FAMEExists イベントの後に発生します。

前のページ | ホーム | 次のページ
expect_popen | 上に戻る | fam_cancel_monitor