Добавить в корзинуПозвонить
Найти в Дзене
Блог Web-Dev

PHP: if else, elseif

Конструкции PHP if else, elseif вычисляют условия и исходя из результатов этих вычислений выполняют соответствующие блоки кода. Подобные конструкции дают вашей программе самому принимать решение в какую сторону двигаться дальше. Поэтому их называют операторами ветвления. Данные конструкции играют важную роль практически во всех языках программирования. Конструкция if Оператор «if» в переводе означает «если». Эта конструкция ветвления является самым простым в PHP. if(выражение, то есть условие){
инструкция: блок кода для выполнения, если условие true
} В следующем примере оператор «if» проверяет выражение и если условие выражения указанное в круглых скобках окажется верно (true), то выполняется инструкция (блок кода) прописанное в фигурных скобках. <?php
$myColor="green";
if($myColor=="green"){
echo "Результат true - $myColor";
}
?> Если в конструкции прописана лишь одна инструкция, то фигурные скобки можно не ставить. Далее рассмотрим более сложные конструкции ветвления в PHP. Конструк
Оглавление

Конструкции PHP if else, elseif вычисляют условия и исходя из результатов этих вычислений выполняют соответствующие блоки кода. Подобные конструкции дают вашей программе самому принимать решение в какую сторону двигаться дальше. Поэтому их называют операторами ветвления. Данные конструкции играют важную роль практически во всех языках программирования.

Конструкция if

Оператор «if» в переводе означает «если». Эта конструкция ветвления является самым простым в PHP.

if(выражение, то есть условие){
инструкция: блок кода для выполнения, если условие true
}

В следующем примере оператор «if» проверяет выражение и если условие выражения указанное в круглых скобках окажется верно (true), то выполняется инструкция (блок кода) прописанное в фигурных скобках.

<?php
$myColor="green";
if($myColor=="green"){
echo "Результат true - $myColor";
}
?>

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

Далее рассмотрим более сложные конструкции ветвления в PHP.

Конструкция if else

Частенько в процессе работы необходимо прописать дополнительную альтернативу, если условие не сработало. Для этого подойдет оператор «else», его русский перевод — «иначе».

Оператор «иначе» расширяет возможности оператора «если» для продолжения выполнения выражения, если условие оказалось ложью (false).

if(условие){
Сработает если условие будет true
}else{
Сработает если верхнее условие оказалось false
}

<?php
$myColor = "белый";
if($myColor == "черный"){
echo "Наш цвет $myColor равно цвету черный";
}else{
echo "Наш цвет $myColor неравен цвету черный";
}
?>

Как видим из примера, выражение «else» будет выполнено только в том случае, если условие выражения «if» окажется ложью (false).

Другой пример:

<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
Вставить данные: <select name="my_auto">
<option value="Мерседес">Мерседес</option>
<option value="Ауди">Ауди</option>
</select><br><br>
<input type="submit" value="Проверить данные">
</form>
<?php
$my_auto=$_POST["my_auto"];
if($my_auto){
if($my_auto=="Ауди"){
echo "<h3>Проверка данных: $my_auto равен Ауди (true)</h3>";
}else{
echo "<h3>Проверка данных: $my_auto не равен Ауди (false)</h3>";
}
}
?>

В этом примере есть вложенность условий в друг друга. Первым условием «if($my_auto)» проверяем наличие значения в переменной. Если значение есть, то вторым условием «if($my_auto=="Ауди")» проверяем равенство значений и в зависимости от результата выводим соответствующий блок кода.

Конструкция if elseif else

Бывает нам нужно проверить не одно, а несколько и больше условий. В этом нам поможет оператор «elseif», переводится как «иначе если». Он также расширяет возможности оператора «если».

Оператор «elseif» отличается от «else» тем, что у него есть условие и оно выполнится, если данное условие будет «true» (истинно).

if(условие){
Сработает если условие является истинным
}elseif(условие){
Сработает если верхнее условие ложно, а это условие истинно
}else{
Сработает если верхнее условие ложно
}

<?php
if(date('N')==1):
echo "Сегодня день недели — Понедельник!";
elseif(date('N')==2):
echo "Сегодня день недели — Вторник!";
elseif(date('N')==3):
echo "Сегодня день недели — Среда!";
elseif(date('N')==4):
echo "Сегодня день недели — Четверг!";
elseif(date('N')==5):
echo "Сегодня день недели — Пятница!";
elseif(date('N')==6):
echo "Сегодня день недели — Суббота!";
else:
echo "Сегодня день недели — Воскресенье!";
endif;
?>

В этом примере мы проверяем каждое условие на равенство значений. В данном случае функцию date('N'), возвращающий номер дня недели, сравниваем с числом и если они равны, тогда условие будет истинно и блок с инструкцией выводится на экран.

В данном примере использовался альтернативный синтаксис «:» и «endif;» без фигурных скобок. Такой синтаксис лучше всего применять в html шаблонах.