This package is not installable via Composer 1.x, please make sure you upgrade to Composer 2+. Read more about our Composer 1.x deprecation policy.

A simple event loop

v1.0.2 2018-04-19 18:07 UTC

This package is auto-updated.

Last update: 2021-06-07 12:36:05 UTC


This might seem initially fairly complicated, but its really not.

So first off, why does this abomination exist? Well I had a use case when I wanted to use the react framework but you cant really pipe a websocket connection into react. So... I built my own event loop system.

I wrote a simple example, check out the /examples/FileStreamEventLoop.php file. It uses the event loop to read a file line-by-line, and prints each line as it reads it.

Take this example:


require 'vendor/autoload.php';

$loop = new FileStreamEventLoop('/path/to/your/file.txt');

#1 first line in your file
#2 second line in your file
#3 third line in your file

To create an event loop you simply need to create a class that extends the judahnator\EventLoop\EventLoop abstract class.

In your loopSetup() method you can setup as many before, during, and after events for your loop. You can also add a periodic callback for code you want to be ran periodically.

Everything should be pretty well documented, but if I missed anything please let me know!