唐金木 07e2592bdb first commit 5 年之前
..
doc 07e2592bdb first commit 5 年之前
examples 07e2592bdb first commit 5 年之前
src 07e2592bdb first commit 5 年之前
tests 07e2592bdb first commit 5 年之前
.gitignore 07e2592bdb first commit 5 年之前
.travis.yml 07e2592bdb first commit 5 年之前
CHANGELOG.md 07e2592bdb first commit 5 年之前
LICENSE 07e2592bdb first commit 5 年之前
README.md 07e2592bdb first commit 5 年之前
composer.json 07e2592bdb first commit 5 年之前
phpunit.xml.dist 07e2592bdb first commit 5 年之前

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.