montefuscolo / php-mediator
This package is abandoned and no longer maintained.
No replacement package was suggested.
A class to provide hooks as actions and filters
1.0
2018-05-15 20:41 UTC
Requires (Dev)
- phpunit/phpunit: ^6
This package is auto-updated.
Last update: 2021-12-22 17:46:29 UTC
README
It is just another Hook system. It is useful to integrate very distinct components of software without making them too coupled to each other.
Installing
composer require montefuscolo/php-mediator
Using it
Actions
<?php use montefuscolo/BaseMediator; $mediator = new BaseMediator(); // Add callbacks to be called later $mediator->add_action('my-channel', function() { echo 'Hello World' . PHP_EOL; }); $mediator->add_action('my-channel', function() { echo 'Foo Bar' . PHP_EOL; }); // .... $mediator->run_actions('my-channel');
Filters
<?php use montefuscolo/BaseMediator; $mediator = new BaseMediator(); // Add callbacks to be called later $mediator->add_filter('my-channel', function($n) { return $n * 2; }); $mediator->add_filter('my-channel', function($n) { return $n * 3; }); $mediator->add_filter('my-channel', function($n) { return $n - 6; }); // .... echo $mediator->run_filters('my-channel', 1); // >>> 0