elseif, как следует из названия, представляет собой комбинацию ifи else. Например else, он расширяет if оператор для выполнения другого оператора в случае, если исходное ifвыражение оценивается как false. Однако, в отличие от else, это альтернативное выражение будет выполняться только в том случае, если elseifусловное выражение оценивается как true. Например, следующий код будет отображать a больше, чем b , a равно b или a меньше, чем b :

<?php
if ($a > $b) {
    echo "a is bigger than b";
} elseif ($a == $b) {
    echo "a is equal to b";
} else {
    echo "a is smaller than b";
}
?>

В одном операторе может быть несколько elseifs . ifБудет выполнено первое elseifвыражение (если есть), которое имеет значение true. В PHP вы также можете написать «else if» (двумя словами), и поведение будет идентично поведению «elseif» (одним словом). Синтаксическое значение немного отличается (если вы знакомы с C, это то же самое поведение), но суть в том, что оба приводят к точно такому же поведению.

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

Примечание . Обратите внимание, что elseifи else if будет считаться точно таким же только при использовании фигурных скобок, как в приведенном выше примере. При использовании двоеточия для определения условий if/ elseifвы не должны разделяться else ifна два слова, иначе PHP завершится с ошибкой синтаксического анализа.

<?php

/* Incorrect Method: */
if ($a > $b):
    echo $a." is greater than ".$b;
else if ($a == $b): // Will not compile.
    echo "The above line causes a parse error.";
endif;


/* Correct Method: */
if ($a > $b):
    echo $a." is greater than ".$b;
elseif ($a == $b): // Note the combination of the words.
    echo $a." equals ".$b;
else:
    echo $a." is neither greater than or equal to ".$b;
endif;

?>