У меня есть простой класс со статическим обратным вызовом. Но когда я пытаюсь выполнить обратный вызов, я получаю следующую ошибку:
E_NOTICE: тип 8 - неопределенная переменная: _fn - в строке 14 Исключение:
Имя функции должно быть строкой
Вот мой PHP-код:
<?php
class test
{
public static $_fn = null;
public static function setFN(callable $fn)
{
self::$_fn = $fn;
}
public static function do($arg)
{
self::$_fn($arg);
}
}
test::setFN(function ($arg) {
echo $arg;
});
test::do('test');
?>
Может кто-нибудь, пожалуйста, пролить свет, что здесь не так?