Reactive Slim is a bridge where you can pass your Slim instance and reap the benefit's of ReactPHP's event driven, non-blocking I/O usage of PHP.
The implementation run's on PHP7.0 and makes good use of PHP's Scalar Type hints.
composer require nigelgreenway/reactive-slim
After creating your Slim Instance, pass it to the following construction:
(new \ReactiveSlim\Server($slimInstance))
->run();Please see the examples for more information or run php ./example/app-dev-mode.php.
If are you are running via PHP locally, you are able to pass the following flags to customise both the host and the port:
-h 0.0.0.0 or --host=0.0.0.0 and -p 8686 or --port=8686
There are 3 ways to restart your application (only tested on Linux - Solus, kernel 4.9.30-29.lts currently):
sh ./.tools/local-watchruns via local PHP installation (requiresinotify-toolsto be installed via package manager)sh ./.tools/reactorrun via local PHP installation and requires thereactor.config.jsonconfigsh ./.tools/docker-watchrun the app within a Docker container (requiresinotify-toolsto be installed via package manager)
#withHost(<string>) - The default host URL is 0.0.0.0 but is overridden by passing a string as the parameter
#withPort(<int>) - The default port is 1337 but is overridden by passing an integer as the parameter
#withEnvironment(<int>) - The default is 0 which is the Production environment, the full options are:
ServerEnvironment::PRODUCTION(0)ServerEnvironment::STAGING(1)ServerEnvironment::TESTING(2)ServerEnvironment::DEVELOPMENT(3)
Please see CHANGELOG for more information on what has changed recently.
$ composer testPlease see CONTRIBUTING and CONDUCT for details.
If you discover any security related issues, please email :author_email instead of using the issue tracker.
This has been created to plug two great packages together:
The MIT License (MIT). Please see License File for more information.