На этом шаге мы рассмотрим использование конструкции elseif.
Теперь рассмотрим оператор elseif. Он был введен для расширения возможностей условного оператора if. В общем случае эта конструкция выглядит так:

Рис.1. Общий вид оператора elseif
Порядок ее выполнения приведен ниже:
if (условие1) действие1; /* выполняется действие1, если условие1 истинно */ elseif (условие2) действие2; /* выполняется действие2, если условие1 ложно и условие2 истинно */ else действие3; /* выполняется действие3, если условие1 ложно и условие2 ложно */
<?php
if ($a > $b) // $a больше $b?
{
// если да, то выводим, и остальное пропускаем
echo "а больше b";
}
/* если нет, то проверим, равно ли значение переменной $а значению переменной $b? */
elseif ($a == $b)
{
// если да, то выводим эту фразу, и остальное пропускаем
echo "а равно b";
}
else
/* если ни одно из условий не выполнилось, то выводим данную фразу */
{
echo "а меньше b";
}
?>
Задание. Выполните приведенную условную конструкцию, задавая переменным $a и $b различные значения.
<?php
$book_name = "Самоучитель по PHP";
if ($book_name == "Самоучитель по Perl")
{
echo "Автор: Петров"; // выходные данные
}
elseif ($book_name == "Самоучитель no ASP")
{
echo "Автор: Иванов"; // выходные данные
}
elseif ($book_name == "Самоучитель по PHP")
{
echo "Автор: Сидоров"; // выходные данные
}
?>
Задание. Выполните приведенную условную конструкцию, задавая переменной
$book_name различные значения. Какой существенный недостаток вы нашли в этой программе?
При написании программ может потребоваться организовать проверку большого количества условий. В этом случае использование рассмотренных выше конструкций является не слишком эффективным. Для этих целей в язык программирования был включен оператор switch, к изучению которого мы сейчас переходим.
На следующем шаге мы рассмотрим оператор switch.