call_user_func (array (self, 'method')) - нужно ли называть класс?

В PHP, call_user_func (array (self,' method_name ')) не работает. Ключевое слово self не может использоваться в этом контексте. Мне действительно нужно включить имя класса call_user_func (array ('class_name', 'method_name')) .

Однако , если я не использую статическую функцию, переменная $ this работает в этом контексте. Почему разница?

11
задан hakre 18 December 2012 в 16:31
поделиться

1 ответ

Начиная с PHP 5.5 можно сделать [self::class, 'methodName'].

::class действительно полезно для ситуаций, где у Вас есть имя класса (возможно, локальный псевдоним), и необходимо генерировать полное имя класса как строку.

1
ответ дан 3 December 2019 в 05:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: