Hugo Sales 6925b7fcfc [INSTALL] Move all non-public files to 'private' 3 years ago
..
doc 6925b7fcfc [INSTALL] Move all non-public files to 'private' 3 years ago
examples 6925b7fcfc [INSTALL] Move all non-public files to 'private' 3 years ago
src 6925b7fcfc [INSTALL] Move all non-public files to 'private' 3 years ago
tests 6925b7fcfc [INSTALL] Move all non-public files to 'private' 3 years ago
.gitignore 6925b7fcfc [INSTALL] Move all non-public files to 'private' 3 years ago
.travis.yml 6925b7fcfc [INSTALL] Move all non-public files to 'private' 3 years ago
CHANGELOG.md 6925b7fcfc [INSTALL] Move all non-public files to 'private' 3 years ago
LICENSE 6925b7fcfc [INSTALL] Move all non-public files to 'private' 3 years ago
README.md 6925b7fcfc [INSTALL] Move all non-public files to 'private' 3 years ago
composer.json 6925b7fcfc [INSTALL] Move all non-public files to 'private' 3 years ago
phpunit.xml.dist 6925b7fcfc [INSTALL] Move all non-public files to 'private' 3 years ago

README.md

Événement

Événement is a very simple event dispatching library for PHP.

It has the same design goals as Silex and Pimple, to empower the user while staying concise and simple.

It is very strongly inspired by the EventEmitter API found in node.js.

Build Status

Fetch

The recommended way to install Événement is through composer.

Just create a composer.json file for your project:

{
    "require": {
        "evenement/evenement": "^3.0 || ^2.0"
    }
}

Note: The 3.x version of Événement requires PHP 7 and the 2.x version requires PHP 5.4. If you are using PHP 5.3, please use the 1.x version:

{
    "require": {
        "evenement/evenement": "^1.0"
    }
}

And run these two commands to install it:

$ curl -s http://getcomposer.org/installer | php
$ php composer.phar install

Now you can add the autoloader, and you will have access to the library:

<?php
require 'vendor/autoload.php';

Usage

Creating an Emitter

<?php
$emitter = new Evenement\EventEmitter();

Adding Listeners

<?php
$emitter->on('user.created', function (User $user) use ($logger) {
    $logger->log(sprintf("User '%s' was created.", $user->getLogin()));
});

Emitting Events

<?php
$emitter->emit('user.created', [$user]);

Tests

$ ./vendor/bin/phpunit

License

MIT, see LICENSE.