Условные конструкции являются, пожалуй, наиболее часто используемыми во многих языках программирования. Рассмотрим основные условные операторы языка PHP.
Конструкция if
Синтаксис конструкции if аналогичен конструкции if в языке Си:
<?php if (логическое выражение) оператор; ?>
Согласно выражениям PHP, конструкция if содержит логическое выражение. Если логическое выражение истинно (true), то оператор, следующий за конструкцией if будет исполнен, а если логическое выражение ложно (false), то следующий за if оператор исполнен не будет. Приведем примеры:
<?php if ($a > $b) echo "значение переменной $a больше, чем $b"; ?>
Если необходимо выполнить блок операторов, который будет выполняться при определенном условном критерии, тогда все операторы этого блока нужно поместить в фигурные скобки {…} Пример:
<?php if ($a > $b) { echo "$a больше $b"; $b = $a; } ?>
Приведенный пример выведет сообщение, «a больше b», если $a > $b, а затем переменная $a будет приравнена к переменной $b. Заметим, что данные операторы выполняются в теле конструкции if.
Конструкция else
Часто возникает потребность исполнения операторов не только в теле конструкции if, если выполнено какое-либо условие конструкции if, но и в случае, если условие конструкции if не выполнено. В данной ситуации нельзя обойтись без конструкции else. В целом, такая конструкция будет называться конструкцией if-else.
Синтаксис конструкции if-else такой:
if (логическое_выражение)
инструкция_1;
else
инструкция_2;
Действие конструкции if-else следующее: если логическое_выражение истинно, то выполняется
инструкция_1, а иначе — инструкция_2. Как и в любом другом языке, конструкция else может опускаться, в этом случае при получении должного значения просто ничего не делается.
Если инструкция_1 или инструкция_2 должны состоять из нескольких команд, то
они, как всегда, заключаются в фигурные скобки. Например:
<?php
if ($a > $b) {
echo "a больше, чем b";
} else {
echo "a НЕ больше, чем b";
}
?>
Конструкция if-else имеет еще один альтернативный синтаксис:
if (логическое_выражение):
команды;
elseif(другое_логическое_выражение):
другие_команды;
else:
иначе_команды;
endif
Обратите внимание на расположение двоеточия (:)! Если его пропустить, будет сгенерировано сообщение об ошибке. И еще: как обычно, блоки elseif и else можно опускать.
elseif — это комбинация конструкций if и else. Эта конструкция расширяет условную конструкцию if-else.
Приведем синтаксис конструкции elseif:
if (логическое_выражение_1)
оператор_1;
elseif (логическое_выражение_2)
оператор_2;
else
оператор_3;
Практический пример использования конструкции elseif:
<?php if ($a > $b) { echo "a больше, чем b"; } elseif ($a == $b) { echo "a равен b"; } else { echo "a меньше, чем b"; } ?>
Вообще, конструкция elseif не очень удобна, поэтому применяется не так часто.
Задание 1. Модифицируйте программу из Задания 2 практической работы №4, так чтобы
а) если произведение чисел меньше чем 40, то оно должно выводится зеленым цветом;
б) если произведение чисел больше чем 75, то оно должно выводится красным цветом и оформлено полужирным шрифтом;
в) если произведение чисел четное, то оно должно выводится на сером фоне.