Конструкция if
Сама конструкция if, или как его еще называют условного оператора, очень проста: если условие в круглых скобках правда, то выполняется код в фигурных скобках. А вот и сама конструкция
$a=7
if ($a>5) {
echo '$a - это много!'
}
от условия в круглых скобках ожидает либо true либо false. Если там какой-то другой тип, то он будет приводиться к одному из этих двух значений.
В нашей ситуации будет выведено '$a - это много', но если бы выражение в круглых скобках($a>5) было ложью, то echo было бы проигнорировано.
Попробуем написать код, который бы выводил большее из двух чисел
$a=5;
$b=7;
if ($a>$b) {
echo $a;
} else {
echo $b;
}
В данном случае нам добавилась конструкция else, которая выполнится в случае, если выражение в скобках ложь, т.е. false.
Давайте попробуем освоить полученные знания в полной мере. Допустим мы хотим проверить, что $a>10 но при этом меньше 30. Мы можем воспользоваться вложенными if'ами(в дальнейшем мы будем использовать для этой задачи другой подход, но вложенные if'ы нам пригодятся)
if ($a<30) { // сначала отсекаем числа большие 30
if ($a>10) {
// потом из оставшихся выберем те, что больше 10
echo '10<$a<30'
}
}
В данном примере, если $a не будет попадать в искомый промежуток, то нам ничего не выведется. Можно конечно переписать код следующим образом:
if ($a<30) { // сначала отсекаем числа большие 30
if ($a>10) {
// потом из оставшихся выберем те, что больше 10
echo '10<$a<30'
} else {
echo 'Все плохо';
}
} else {
echo 'Все плохо';
}
Не выглядит сильно компактно + мы дублируем реакцию на неудачный исход. В последующих пунктах, мы обязательно оптимизируем этот код.
Практика:
- Есть три переменных $a,$b,$c , содержащие числа - вывести максимальное из трех чисел.
- Проверить могут ли три числа быть треугольником