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

Как правильно прописать логический оператор «and» или «&&»?

Раньше работало при таком написании: if (empty($a && $b))
Сейчас работает только при таком написании: if ((empty($a) && empty($b))
Подскажите, что могло измениться, из-за чего перестал работать первый вариант написания? Может такое быть из-за смены версии PHP с 5.6 на 7.3 (больше вроде ничего не делал)? Как правильно написать выражение (подойдет второй вариант или как-то иначе надо)?
  • Вопрос задан
  • 161 просмотр
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
DevMan
@DevMan
empty($a && $b) - это empty(true|false) что кагбе бессмысленно.

второй вариант.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@necrodeflorator
Почитайте про приведение типов в пхп.
В первом варианте пыха приводит а и б к булеву, вычисляет результат и, зачем-то, вычисляет от него эмпти - совершенно лишнее действие.

Второй вариант выглядит правильнее
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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