Время чтения ~ 20 сек. / 43 просмотра / 0 комментариев / Январь 13, 2024, 18:42

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

Введение

Конструкция if оценивает выражение и выполняет блок кода, если выражение истинно:

<?php

if (выражение) {
    инструкция;
}

Конструкция if может содержать один или несколько необязательных блоков elseif. Конструкция elseif представляет собой комбинацию операторов if и else:

<?php

if (выражение1) {
    инструкция;
} elseif (выражение2) {
    инструкция;
} elseif (выражение3) {
    инструкция;
}

PHP оценивает выражение1 и выполняет блок кода в конструкции if, если выражение1 истинно.

Если выражение1 ложно, PHP оценивает выражение2 в следующем блоке elseif. Если результат истинен, PHP выполняет инструкцию в этом блоке elseif. В противном случае PHP оценивает выражение3.

Если выражение3 истинно, PHP выполняет блок, следующий за блоком elseif. В противном случае PHP его игнорирует.

Обратите внимание, что при наличии у конструкции if нескольких блоков elseif, блок elseif выполнится только в том случае, если выражение в предшествующем блоке if или elseif оценивается как false.

Следующая блок-схема иллюстрирует, как работает конструкция if elseif:

if elseif php

В следующем примере используется оператор if elseif для отображения того, является ли переменная $x больше переменной $y:

<?php

$x = 10;
$y = 20;

if ($x > $y) {
    $message = 'x больше y';
} elseif ($x < $y) {
    $message = 'x меньше y';
} else {
    $message = 'x равно y';
}

echo $message;

Вывод:

x меньше y

Скрипт показывает сообщение x меньше y, как и ожидалось.

Альтернативный синтаксис if elseif в PHP

PHP также поддерживает альтернативный синтаксис elseif без использования фигурных скобок, например:

<?php
if (выражение):
    инструкция;
elseif (выражение2):
    инструкция;
elseif (выражение3):
    инструкция;
endif;

В данном синтаксисе:

  • Используйте две точки (:) после каждого условия, следующего за ключевыми словами if или elseif.
  • Используйте ключевое слово endif вместо фигурной скобки (}) в конце оператора if.

В следующем примере используется альтернативный синтаксис с elseif:

<?php

$x = 10;
$y = 20;

if ($x > $y) :
    $message = 'x больше y';
elseif ($x < $y):
    $message = 'x меньше y';
else:
    $message = 'x равно y';
endif;

echo $message;

Альтернативный синтаксис подходит для использования с HTML.

elseif и else if в PHP

PHP позволяет использовать else if (в двух словах), что имеет тот же результат, что и elseif (в одном слове):

<?php

if (выражение) {
    инструкция;
} else if (выражение2) {
    инструкция2;
}

В данном случае, else if эквивалентен следующей вложенной структуре if...else:

if (выражение) {
    инструкция;
} else {
    if (выражение2) {
        инструкция2;
    }
}

Если вы используете альтернативный синтаксис, вам нужно использовать оператор if...elseif вместо оператора if...else if. В противном случае возникнет ошибка.

Следующий пример не будет работать и вызовет ошибку:

<?php

$x = 10;
$y = 20;

if ($x > $y) :
    echo 'x больше y';
else if ($x < $y):
    echo 'x меньше y';
else:
    echo 'x равно y';
endif;

Подытожим

  • Используйте оператор if...elseif для оценки нескольких выражений и выполнения блоков кода условно.
  • Только оператор if...elseif поддерживает альтернативный синтаксис, оператор if...else if - нет.
  • Всегда используйте elseif, когда это возможно, чтобы сделать ваш код более последовательным.
Теги:
php
Конструкция if else - PHP
Тернарный оператор - PHP
Установка PHP
Декабрь 26, 2023, 22:22
В этом уроке вы узнаете, как установить PHP на свой компьютер локально, чтобы начать изучать PHP.
Жонглирование типами (type juggling) - PHP
Январь 09, 2024, 11:20
В этом уроке вы узнаете о жонглировании типами (type juggling) в PHP и о том, как оно работает.
Привет, Мир! на PHP
Декабрь 27, 2023, 22:33
В этом уроке вы узнаете, как выполнить сценарий, который выводит сообщение "Привет, Мир!" в веб-браузере и в командной строке.
Операторы присваивания - PHP
Январь 09, 2024, 22:29
В этом уроке вы узнаете о наиболее часто используемых операторах присваивания в PHP.
Константы в PHP
Декабрь 31, 2023, 12:52
В этом уроке вы узнаете о константах в PHP и о том, как использовать функцию define() и ключевое слово const для определения констант.