phpion / phpion
PHP extension for asynchronous IO and other notifications
Installs: 35
Dependents: 1
Suggesters: 0
Security: 0
Stars: 66
Watchers: 9
Forks: 4
Open Issues: 1
Language:C
Requires
- php: >=7.0
Requires (Dev)
- ext-openssl: *
- ext-pcntl: *
- ext-posix: *
- phpunit/phpunit: *
README
ION (regex /^(I)nput(?:,?\s|-)(O)utput,?\s(N)otifications?$/im
) - PHP extension for asynchronous programming.
- Subject: PHP extension
- Language: C
- OS: linux, mac, freebsd
- PHP version: 7.0+
- Stage: develop
- State:
- Version:
- Versioning: semver2
- Based: libevent2
- Packagist: phpion/phpion
- Documentation: en, ru
- PHP API: see classes and constants
- Configuration: see ini directives
- Unit testing: phpunit with memory leak detector
Install :: Testing :: Segfault :: Contributing
Features
- Built-in Promise/Deferred/Sequence
- Any eventual action return Promise/Deferred/Sequence
- Any Promise/Deferred/Sequence supports generators
- Promise/Deferred/Sequence generators make asynchronous programming easy
- Promise/Deferred/Sequence supports type hinting in callbacks
- Async sockets and stream pipes
- Async socket listeners
- Sendfile supports
- Asynchronous DNS requests
- Useful utilities for processes
- Sending and listening POSIX signals
- Async execution an external program
- Async reading files from FS
- SSL/TLS encryption supports
- Listening FS events
- Create process childs
- Asynchronous inter-process communication
- Management of child processes
- Built-in HTTP 1.0 and 1.1 request/response parsers
- Built-in WebSocket frame parser and Multi-parted parser
[0.9]
[x] Supports PHP 7.2
[ ] Supports PHP 7.3
[ ] Add events classes: ION\DescriptorEvent
, ION\TimerEvent
, ION\SignalEvent
, ION\FS\INodeEvent
[1.0]
- Stable ION
What can you do
- Asynchronous servers
- Asynchronous clients
- PHP daemons
- PHP clusters
- as you wish