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;
?>
0 комментариев