mensbeam/self-sealing-callable

You won't find a better Self-Sealing Callable in this sector!

v1.0 2024-02-12 16:55 UTC

This package is auto-updated.

Last update: 2024-09-12 18:24:59 UTC


README

You won't find a better Self-Sealing Callable in this sector!

Self-Sealing Callable is a class that implements __invoke() which can enable and disable itself. When registering shutdown functions in PHP it's not possible to unregister them. This class exists to be used in this case. By calling SelfSealingCallable->disable() it will return false when invoked, allowing retroactive disabling of the shutdown handler.

Requirements

  • PHP 8.1

Installation

composer require mensbeam/self-sealing-callable

Usage

It's pretty simple:

use MensBeam\SelfSealingCallable;

$callable = new SelfSealingCallable(fn() => 'ook');
$ook = $callable();
// 'ook'
$callable->disable();
$ook = $callable();
// false
$callable->enable();
$ook = $callable();
// 'ook'