• PHP Video Tutorials

PHP - Inotify Functions


The inotify extension can expose inotify functions: inotify_init(), inotify_add_watch() and inotify_rm_watch().

As the C inotify_init() function return a file descriptor, PHP's inotify_init() function return a stream resource usable with standard stream functions: stream_select(), stream_set_blocking(), and fclose(). inotify_read() can replace the C way of reading inotify events.

This extension can require Linux 2.6.13 or newer and the recent libC.

This extension has no configuration directives that can be defined in php.ini.

This extension can define a stream resource that has returned by the inotify_init() function.

Predefined Constants

The constants are defined below by this extension and can be available only when an extension has either compiled into PHP or dynamically loaded at runtime.

Inotify constants can be usable with inotify_add_watch() and/or returned by inotify_read().

  • IN_ACCESS (integer) − File was accessed (read) (*)

  • IN_MODIFY (integer) − File was modified (*)

  • IN_ATTRIB (integer) − Metadata changed (e.g. permissions, mtime, etc.) (*)

  • IN_CLOSE_WRITE (integer) − File opened for writing was closed (*)

  • IN_CLOSE_NOWRITE (integer) − File not opened for writing was closed (*)

  • IN_OPEN (integer) − File was opened (*)

  • IN_MOVED_TO (integer) − File moved into watched directory (*)

  • IN_MOVED_FROM (integer) − File moved out of watched directory (*)

  • IN_CREATE (integer) − File or directory created in watched directory (*)

  • IN_DELETE (integer) − File or directory deleted in watched directory (*)

  • IN_DELETE_SELF (integer) − Watched file or directory was deleted

  • IN_MOVE_SELF (integer) − Watch file or directory was moved

  • IN_CLOSE (integer) − Equals to IN_CLOSE_WRITE | IN_CLOSE_NOWRITE

  • IN_MOVE (integer) − Equals to IN_MOVED_FROM | IN_MOVED_TO

  • IN_ALL_EVENTS (integer) − Bitmask of all the above constants

  • IN_UNMOUNT (integer) − File system containing watched object was unmounted

  • IN_Q_OVERFLOW (integer) − Event queue overflowed (wd is -1 for this event)

  • IN_IGNORED (integer) − Watch was removed (explicitly by inotify_rm_watch() or because file was removed or filesystem unmounted

  • IN_ISDIR (integer) − Subject of this event is a directory

  • IN_ONLYDIR (integer) − Only watch pathname if it is a directory (Since Linux 2.6.15)

  • IN_DONT_FOLLOW (integer) − Do not dereference pathname if it is a symlink (Since Linux 2.6.15)

  • IN_MASK_ADD (integer) − Add events to watch mask for this pathname if it already exists (instead of replacing mask).

  • IN_ONESHOT (integer) − Monitor pathname for one event, then remove from watch list.

Sr.No Function & Description


Function can add a watch to an initialized inotify instance.



Function can initialize an inotify instance.



Function can return a number upper than zero if there are pending events.



Function can read events from an inotify instance.



Function can remove an existing watch from an inotify instance.


Useful Video Courses


PHP Online Training

45 Lectures 9 hours

Malhar Lathkar


Become PHP Facebook Developer: Password-Less Authentication

34 Lectures 4 hours

Syed Raza


Ultimate PHP & MySQL Web Development Course & OOP Coding

84 Lectures 5.5 hours

Frahaan Hussain


Learn PHP from Scratch

17 Lectures 1 hours

Nivedita Jain


E Commerce Website Development In PHP With PDO

100 Lectures 34 hours

Azaz Patel


PHP in Telugu

43 Lectures 5.5 hours

Vijay Kumar Parvatha Reddy