Цель: изучить операции сравнения, научиться использовать логические функции и логические переменные при решении задач.
Краткие теоретические сведения
Конструкция if-else
Для того, чтобы создать программу на РНР, одних переменных далеко недостаточно. Нам нужен механизм, который позволит выполнять определенный код в зависимости от каких-либо условий.
Например, так: если эта переменная меньше нуля, то вывести ‘отрицательно’, иначе (то есть если она больше нуля) вывести ‘положительно’.
В PHP для решения подобных задач предназначена конструкция if, которая позволяет выполнять определенный код при выполнении какого-либо условия:
Обратите внимание на то, что блок else не обязателен.
Логическое выражение представляет собой тот самый вопрос, который мы хотим задать PHP. Например, чтобы спросить ‘переменная $a больше нуля’ мы напишем так: $a > 0.
Примеры работы:
Сокращенный синтаксис
В случае, если в фигурных скобках if или else будет только одно выражение, можно эти фигурные скобки не писать:
Равенство по значению и типу
Для того, чтобы сравнить на равенство следует использовать оператор двойное равно ==, а не одиночное =, как можно было подумать.
Почему так? Потому что одиночное равно зарезервировано за присваиванием. Смотрите пример:
Кроме оператора == существует еще и оператор ===. Их различие в том, что === сравнивает не только по значению, но и по типу, а == сравнивает только по значению.
Чтобы полностью разобраться в этом, внимательно изучите примеры:
Не равно
Для того, чтобы спросить ‘не равно’, существует операторы != и !==. Первый игнорирует различие в типах, а второй — нет.
Функция empty
Зачастую в веб-программировании возникает следующая проблема: необходимо проверить переменную на пустоту.
Переменная будет пустая, если она равна нулю, » (пустой строке), false или null (то есть, не определена ранее).
Проверка на пустоту выполняется с помощью функции empty():
Чаще возникает обратная задача — проверка на то, что переменная является НЕ пустой. Отрицание НЕ можно сделать с помощью оператора ‘!’:
Функция isset
Аналогом empty является функция isset. Она проверяет существует ли переменная (то есть то, что она не равна null). Смотрите примеры:
Несколько условий сразу: or и and
Иногда может быть нужно составить какое-то сложное условие, например, пользователь вводит месяц своего рождения и вам нужно проверить, что введенное число больше или равно 1 и меньше либо равно 12 (так как в году 12 месяцев).
Для этого существуют операторы and (логическое И) и or (логическое ИЛИ).
