Я работаю с анонимными функциями, где я создаю анонимную функцию вне объекта, а затем добавляю ее к объекту позже, в котором она будет использоваться с магической функцией __callStatic.Добавляемые замыкания содержат методы из родительского класса.Мне интересно, смогу ли я вызвать эти методы из замыкания?
Прямо сейчас я получаю эту ошибку:
EmptyObject::addMethod('open', function(){
if (static::_hasAdapter(get_class(), __FUNCTION__))
return self::_callAdapter(get_class(), __FUNCTION__, $details);
echo '<p>You have mail!</p>';
});
выдает эту ошибку:
Неустранимая ошибка: невозможно получить доступ к статическому ::, когда ни одна область классов не активна в
И
//Add the functions
EmptyObject::addMethod('open', function(){
if (EmptyObject::_hasAdapter('EmptyObject', __FUNCTION__))
return EmptyObject::_callAdapter('EmptyObject', __FUNCTION__, $details);
echo '<p>You have mail!</p>';
});
, выдает эту ошибку, поскольку метод защищен
Неустранимая ошибка: необнаруженное исключение 'BadMethodCallException' с сообщением 'Метод' _hasAdapter 'не найдено в классе EmptyObject'