Материал предоставлен https://it.rfei.ru

Инструкция if

Процесс выполнения программы можно представить себе как езду на машине по однополосной магистрали. Эта магистраль большей частью прямолинейна, но иногда встречаются различные дорожные знаки, задающие направление движения.

Когда встречается инструкция if, можно представить, что машина подошла к знаку объезда, предписаниям которого необходимо следовать, когда определенные условия вычисляются как TRUE. При этом вы съезжаете с магистрали и следуете по объездному пути до тех пор, пока не вернетесь снова на магистраль и не продолжите движение по исходному маршруту. Или же, если условие не вычисляется как TRUE, вы игнорируете объезд и продолжаете ехать по магистрали как ни в чем не бывало (см. рис.).

Рис. Процесс выполнения программы похож на движение по однополосной магистрали

Содержимым условной инструкции if может быть любое допустимое РНР-выражение, включая равенство, сравнение, проверку на нуль и NULL и даже значения, возвращаемые функциями (как встроенными, так и созданными самостоятельно).

Действия, предпринимаемые при вычислении условия в TRUE, помещаются, как правило, в фигурные скобки { }. Но эти скобки можно игнорировать, если нужно выполнить всего одну инструкцию.

Тем не менее, если всегда использовать фигурные скобки, можно избежать «охоты» на трудно отслеживаемые ошибки, возникающие, к примеру, когда к условной инструкции добавляется еще одна строка, которая не вычисляется из-за отсутствия фигурных скобок. (Учтите, что в целях доходчивости материала, если в примерах, приводимых в курсе, была всего одна исполняемая инструкция, мы не следовали этому совету и опускали фигурные скобки.)

В примере следует представить, что подошел конец месяца и нужно платить по всем счетам, поэтому вы проводите некоторые операции с банковским счетом.

Пример. Инструкция if, в которой используются фигурные скобки

<?php
if ($bank_balance < 100)
{
     $money += 1000;
     $bank_balance += $money;
}
?>

В этом примере проверяется, не стал ли баланс ниже 100 долларов (или 100 единиц другой используемой вами валюты). Если баланс стал ниже этой суммы, вы платите сами себе 1000 долларов, а затем прибавляете их к балансу. (Хорошо бы так просто зарабатывать деньги!)

Если баланс счета в банке равен 100 долларам или превышает эту сумму, условные инструкции игнорируются и процесс выполнения программы переходит на следующую строку кода (которая здесь не показана).

Некоторые разработчики предпочитают ставить первую фигурную скобку справа от условного выражения, а некоторые начинают с нее новую строку. В этом курсе открывающая фигурная скобка располагается обычно на новой строке. Подойдет любой из этих вариантов, поскольку РНР позволяет оставлять на ваше усмотрение какие угодно свободные пространства (пробелы, символы новых строк и табуляции).

Но код будет легче читаться и отлаживаться, если у каждого уровня условий будет свой отступ, сформированный с помощью символа табуляции.

УсловияИнструкция else