Given class MyClass
:
class MyClass {}
To create a callback
function that takes a callable
argument:
class MyClass
{
public function callback(callable $func): void
{
$func();
}
}
To create a method
that calls the callback
function:
class MyClass
{
public function callback(callable $func): void
{
$func();
}
public function method(): void
{
$this->callback(function () {
echo 'Hello, World!';
});
}
}
Instantiate the class and call method
and callback
:
$myClass = new MyClass();
$myClass->method(); // Hello, World!
$myClass->callback(function () { echo 42; }); // 42