2024年PHP日本大会

预定义常量

以下常量由此扩展定义,只有在该扩展已编译到PHP中或在运行时动态加载时才可用。

可与inotify_add_watch()一起使用和/或由inotify_read()返回的Inotify常量
IN_ACCESS (int)
文件被访问(读取)(*)
IN_MODIFY (int)
文件被修改(*)
IN_ATTRIB (int)
元数据更改(例如权限、修改时间等)(*)
IN_CLOSE_WRITE (int)
以写入方式打开的文件已关闭(*)
IN_CLOSE_NOWRITE (int)
未以写入方式打开的文件已关闭(*)
IN_OPEN (int)
文件被打开(*)
IN_MOVED_TO (int)
文件移动到监视目录中(*)
IN_MOVED_FROM (int)
文件从监视目录中移出(*)
IN_CREATE (int)
在监视目录中创建文件或目录(*)
IN_DELETE (int)
在监视目录中删除文件或目录(*)
IN_DELETE_SELF (int)
监视的文件或目录被删除
IN_MOVE_SELF (int)
监视的文件或目录被移动
IN_CLOSE (int)
等于 IN_CLOSE_WRITE | IN_CLOSE_NOWRITE
IN_MOVE (int)
等于 IN_MOVED_FROM | IN_MOVED_TO
IN_ALL_EVENTS (int)
所有上述常量的位掩码
IN_UNMOUNT (int)
包含监视对象的 文件系统已卸载
IN_Q_OVERFLOW (int)
事件队列溢出(此事件的wd为-1)
IN_IGNORED (int)
监视器被移除(由inotify_rm_watch()显式移除或因为文件被移除或文件系统已卸载)
IN_ISDIR (int)
此事件的主体是一个目录
IN_ONLYDIR (int)
仅当路径名是目录时才监视路径名(自Linux 2.6.15起)
IN_DONT_FOLLOW (int)
如果路径名是符号链接,则不要取消引用路径名(自Linux 2.6.15起)
IN_MASK_ADD (int)
如果路径名已存在,则将事件添加到此路径名的监视掩码中(而不是替换掩码)。
IN_ONESHOT (int)
监视路径名的一个事件,然后从监视列表中删除。

注意: 上面标有星号(*)的事件可能会发生在监视目录中的文件上。

添加注释

用户贡献的注释 2 条注释

crownedgrouse
15年前
小心使用IN_MODIFY

许多UNIX编辑器,例如'vi',在'xxx~'文件中工作,并在保存或保存并关闭时将更改写入'xxx'。

如果对'xxx'进行监视,则在未保存时不会发生IN_MODIFY事件!

在这种情况下,最好使用IN_CLOSE_WRITE。
rogere84 at gmail dot com
10年前
我注意到常量的值似乎缺失了。当然,这些值可能会根据版本而变化,但在我的系统上,这些是值(如果您需要的话)。

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