nabeghe / hooker
A simple hook system library (actions and filters) based on Symfony EventDispatcher.
0.2.0
2024-09-19 18:03 UTC
Requires
- symfony/event-dispatcher: ^7.1
This package is auto-updated.
Last update: 2024-09-19 18:12:01 UTC
README
A simple hook system library (actions and filters) based on Symfony EventDispatcher.
🫡 Usage
🚀 Installation
You can install the package via composer:
composer require nabeghe/hooker
Examples
Check the examples folder in the repositiry.
Action
require 'vendor/autoload.php'; use Nabeghe\Hooker\Hooker; use Nabeghe\Hooker\Action; $hooker = new Hooker(); $hooker->setDefaultArgToHooks('protocol', 'https://'); $hooker->listen('your_custom_action_name', function (Action $action) { echo $action['protocol'].$action['url'].PHP_EOL; }, 2); $hooker->action('your_custom_action_name', ['url' => 'https://github.com/nabeghe/hooker']);
Filter:
require 'vendor/autoload.php'; use Nabeghe\Hooker\Hooker; use Nabeghe\Hooker\Filter; $hooker = new Hooker(); $hooker->listen('your_custom_action_name', function (Filter $filter) { if ($filter->getValue() === null) { $filter->setValue(8 + $filter['default']); } }); $value = $hooker->filter('your_custom_action_name', null, ['default' => 5]); echo $value; // 13