Actions for Failback is a lightweight wrapper that empowers you to handle unavailability gracefully.
To install the package, you can use Composer. Simply run the following command:
$ composer require tabuna/failbackYou can create an action with a default value using the following code:
useTabuna\FailBack\Action;
// $result = 'default';$result = Action::make(function () {
thrownew \Exception();
}, 'default')->run();
// Alternatively, you can use the short helper$result = failBack(function () {
thrownew \Exception();
}, 'default')();You can define multiple fallback actions using the fail method:
// $result = true;$result = failBack(function () {
thrownew \Exception();
})->fail(function () {
thrownew \Error();
})->fail(function () {
returntrue;
})();To specify a fallback action using a class, create an anonymous class with an __invoke method:
$class = newclass {
/** * @return bool */publicfunction__invoke(): bool
{
returntrue;
}
};
// $result = true;$result = failBack(function () {
thrownewException();
})->fail($class)->run();The MIT License (MIT). Please see License File for more information.