{"id":13700174,"url":"https://github.com/arnaud-lb/php-inotify","last_synced_at":"2025-04-30T04:33:05.376Z","repository":{"id":45638507,"uuid":"50722489","full_name":"arnaud-lb/php-inotify","owner":"arnaud-lb","description":"Inotify bindings for PHP 5, 7, and next","archived":false,"fork":false,"pushed_at":"2024-06-12T17:01:20.000Z","size":28,"stargazers_count":42,"open_issues_count":1,"forks_count":6,"subscribers_count":5,"default_branch":"3.x","last_synced_at":"2024-08-03T20:07:48.049Z","etag":null,"topics":["inotify","php","php-inotify"],"latest_commit_sha":null,"homepage":"https://pecl.php.net/package/inotify","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/arnaud-lb.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-01-30T11:44:54.000Z","updated_at":"2024-06-12T17:01:26.000Z","dependencies_parsed_at":"2022-08-30T13:30:33.891Z","dependency_job_id":null,"html_url":"https://github.com/arnaud-lb/php-inotify","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arnaud-lb%2Fphp-inotify","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arnaud-lb%2Fphp-inotify/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arnaud-lb%2Fphp-inotify/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arnaud-lb%2Fphp-inotify/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/arnaud-lb","download_url":"https://codeload.github.com/arnaud-lb/php-inotify/tar.gz/refs/heads/3.x","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224197917,"owners_count":17271999,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["inotify","php","php-inotify"],"created_at":"2024-08-02T20:00:49.334Z","updated_at":"2025-04-30T04:33:05.368Z","avatar_url":"https://github.com/arnaud-lb.png","language":"C","funding_links":[],"categories":["其他"],"sub_categories":[],"readme":"# PHP Inotify\n\nInotify bindings for PHP 5, PHP 7, and PHP 8\n\nThis extension exposes the inotify API and some additional functions.\n\n## Install\n\n### Installing with [PIE](https://github.com/php/pie)\n\n    pie install arnaud-lb/inotify\n\n### Installing with PECL\n\n    pecl install memprof\n\n### Installing manually\n\nDownload the source and run the following commands in the source directory:\n\n    phpize\n    ./configure\n    make\n    make install\n\n## Loading the extension\n\nThe extension can be loaded on the command line, just for one script:\n\n    php -dextension=inotify.so script.php\n\nOr permanently, in php.ini:\n\n    extension=inotify.so\n\n## Documentation\n\nDocumentation is available at https://php.net/inotify\n\n## Goal\n\nThe goal of this extension is to expose the raw inotify API to PHP, while being memory safe and preventing resource leaks.\n\n## Streams\n\nAs the C inotify API returns file descriptors, this extension returns PHP streams.\n\nThis is useful for the following reasons:\n\n### I/O Polling\n\nThe streams can be used with polling mechanisms such as ``stream_select()`` or event loops such as ReactPHP or AMPHP. It's also possible to make the streams unblocking with ``stream_set_blocking()``.\n\n### Resource management\n\nAs the inotify file descriptors are owned by PHP streams, they are managed by PHP. This ensures that the file descriptors are eventually closed, which prevents descriptor leaks.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farnaud-lb%2Fphp-inotify","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Farnaud-lb%2Fphp-inotify","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farnaud-lb%2Fphp-inotify/lists"}