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

Тернарный оператор выводит результат 1?

echo ((1==1) ?? "YES");

echo ((1==1) ?: "YES");

Получаю результат 1 а нужно YES как сделать ?
  • Вопрос задан
  • 167 просмотров
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 4
romy4
@romy4
Exception handler
В первом случае не тернарный оператор
Во втором случае: $a = (1==1) ? $a : "YES" — меняйте так, как вам нужно
Ответ написан
BuriK666
@BuriK666
Компьютерный псих
Ответ написан
Комментировать
Всё правильно вы получаете.
echo ((1==1) ?? "YES");
Если 1=1 то выводим bool (в данном случае 0 или 1), а иначе выводим YES

Вам скорей всего нужно это echo ((1==1) ? "YES" : "NO");
Ответ написан
OlegMifle
@OlegMifle
php-программист
Твоё выражение равносильно
echo ((1==1) ? (1==1) : 'YES');
Т.е., в случае, когда 1 != 1 результат будет YES.
Нужно вот так:
echo (1==1) ? 'YES' : '';
Ответ написан
Ваш ответ на вопрос

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

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