PHP Australia Conference 2015

定義済み定数

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

inotify_add_watch() で使ったり inotify_read() が返したりする inotify 定数
IN_ACCESS (integer)
ファイルがアクセスされた (読み込み) (*)
IN_MODIFY (integer)
ファイルが変更された (*)
IN_ATTRIB (integer)
メタデータ (パーミッションや修正時刻など) が変更された (*)
IN_CLOSE_WRITE (integer)
書き込みモードで開いたファイルが閉じられた (*)
IN_CLOSE_NOWRITE (integer)
非書き込みモードで開いたファイルが閉じられた (*)
IN_OPEN (integer)
ファイルが開かれた (*)
IN_MOVED_TO (integer)
ファイルが監視対象ディレクトリ内に移動された (*)
IN_MOVED_FROM (integer)
ファイルが監視対象ディレクトリ外に移動された (*)
IN_CREATE (integer)
ファイルあるいはディレクトリが監視対象ディレクトリ内で作成された (*)
IN_DELETE (integer)
ファイルあるいはディレクトリが監視対象ディレクトリ内で削除された (*)
IN_DELETE_SELF (integer)
監視対象のファイルあるいはディレクトリが削除された
IN_MOVE_SELF (integer)
監視対象のファイルあるいはディレクトリが移動した
IN_CLOSE (integer)
IN_CLOSE_WRITE | IN_CLOSE_NOWRITE と同等
IN_MOVE (integer)
IN_MOVED_FROM | IN_MOVED_TO と同等
IN_ALL_EVENTS (integer)
上記の定数すべてのビットマスク
IN_UNMOUNT (integer)
監視対象オブジェクトを含むファイルシステムがアンマウントされた
IN_Q_OVERFLOW (integer)
イベントキューがオーバーフローした (このイベントの監視記述子は -1)
IN_IGNORED (integer)
監視が削除された (明示的に inotify_rm_watch() したか、ファイルが削除されたりファイルシステムがアンマウントされたりした)
IN_ISDIR (integer)
このイベントの対象はディレクトリ
IN_ONLYDIR (integer)
ディレクトリの場合はパス名のみを監視する (Linux 2.6.15 以降)
IN_DONT_FOLLOW (integer)
シンボリックリンクの場合にパス名の参照先を解決しない (Linux 2.6.15 以降)
IN_MASK_ADD (integer)
このパス名が既に存在する場合に、(マスクを上書きするのではなく) マスクにイベントを追加する
IN_ONESHOT (integer)
単一のイベントについてのみパス名を監視し、その後は監視リストから削除する

注意: 上のイベントのうちアスタリスク (*) がついているものは、 監視対象ディレクトリ内のファイルごとに発生する可能性があります。

add a note add a note

User Contributed Notes 2 notes

up
2
crownedgrouse
5 years ago
Be carefull using IN_MODIFY :

Lot of UNIX editor, for instance like 'vi', work in a 'xxx~' file, and changes are written in 'xxx' when saving or saving and closing.

If a watcher is done on 'xxx', no IN_MODIFY event occurs while not saved !

Prefere IN_CLOSE_WRITE in such case .
up
1
rogere84 at gmail dot com
5 months ago
I noticed that the values of the constants seem to be missing. Granted, these could change dependant on version but on my system here are the values (should you want them).

IN_ACCESS = 1
IN_MODIFY = 2
IN_ATTRIB = 4
IN_CLOSE_WRITE = 8
IN_CLOSE_NOWRITE = 16
IN_OPEN = 32
IN_MOVED_FROM = 64
IN_MOVED_TO = 128
IN_CREATE = 256
IN_DELETE = 512
IN_DELETE_SELF = 1024
IN_MOVE_SELF = 2048
IN_UNMOUNT = 8192
IN_Q_OVERFLOW = 16384
IN_IGNORED = 32768
IN_CLOSE = 24
IN_MOVE = 192
IN_ALL_EVENTS = 4095
IN_ONLYDIR = 16777216
IN_DONT_FOLLOW = 33554432
IN_MASK_ADD = 536870912
IN_ISDIR = 1073741824
IN_ONESHOT = 2147483648
To Top