Карточка Middle Функции, замыкания, генераторы обновлено

Виды callable

Вопрос

Какие значения PHP считает callable?

Попробуйте сами

Ответьте про себя или вслух, потом откройте ответ и сверьтесь.

Показать ответ и разбор

Коротко

- Строка с именем функции: 'strlen'. - Массив [$obj, 'method'] или [Foo::class, 'staticMethod']. - Строка 'Foo::bar'. - Объект Closure и объект с invoke. - First-class callable (8.1): strlen(...), $obj-method(...).

Ответ

  • Строка с именем функции: 'strlen'.
  • Массив [$obj, 'method'] или [Foo::class, 'staticMethod'].
  • Строка 'Foo::bar'.
  • Объект Closure и объект с __invoke.
  • First-class callable (8.1): strlen(...), $obj->method(...).

Разбор

В новом коде предпочтителен first-class callable: его проверяют IDE и анализаторы.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.