使用 IN_MODIFY 時要小心
許多 UNIX 編輯器,例如 'vi',會在 'xxx~' 檔案中作業,並且在儲存或儲存並關閉時將變更寫入 'xxx'。
如果在 'xxx' 上進行監控,在未儲存時不會發生 IN_MODIFY 事件!
在這種情況下,建議使用 IN_CLOSE_WRITE。
以下常數由此擴充定義,並且僅在擴充已編譯到 PHP 中或在執行階段動態載入時才會可用。
IN_ACCESS
(整數)IN_MODIFY
(整數)IN_ATTRIB
(整數)IN_CLOSE_WRITE
(整數)IN_CLOSE_NOWRITE
(整數)IN_OPEN
(整數)IN_MOVED_TO
(整數)IN_MOVED_FROM
(整數)IN_CREATE
(整數)IN_DELETE
(整數)IN_DELETE_SELF
(整數)IN_MOVE_SELF
(整數)IN_CLOSE
(整數)IN_MOVE
(整數)IN_ALL_EVENTS
(整數)IN_UNMOUNT
(整數)IN_Q_OVERFLOW
(整數)IN_IGNORED
(整數)IN_ISDIR
(整數)IN_ONLYDIR
(整數)IN_DONT_FOLLOW
(整數)IN_MASK_ADD
(整數)IN_ONESHOT
(整數)注意: 標有星號 (*) 的事件可能會發生在被監控目錄中的檔案上。
使用 IN_MODIFY 時要小心
許多 UNIX 編輯器,例如 'vi',會在 'xxx~' 檔案中作業,並且在儲存或儲存並關閉時將變更寫入 'xxx'。
如果在 'xxx' 上進行監控,在未儲存時不會發生 IN_MODIFY 事件!
在這種情況下,建議使用 IN_CLOSE_WRITE。
我注意到常數的值似乎遺失了。誠然,這些值可能會根據版本而改變,但在我的系統上,以下是這些值(如果您需要的話)。
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