Задать вопрос
@t38c3j

Можно ли разместить анонимную функцию в тернарном операторе?

Здравствуйте, можно ли разместить анонимную функцию в тернарном операторе?
Попробовал так
$a = true ? function () {
    return 'yes';
} : 'no';

var_dump показывает object(Closure)[1]
  • Вопрос задан
  • 189 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
Можно, вопрос зачем.

Для того что бы ваш код работал как ожидалось - надо вызвать функцию. Смысла в этом не особо много конечно, да и работать без временных переменных это будет только в PHP7, но...

В целом так лучше просто не делать.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
miraage
@miraage
Старый прогер
Если было бы нельзя - получили бы ошибку.
Ответ написан
@vivcogit
JS разработчик
Можно, но тогда логично и в else присваивать функцию, т.к. иначе в одном случае придется использовать $a(), а в другом $a
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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