Поиск

Использование оператора if-else

Следующий логический оператор это ifelse, иногда называемый ifthenelse. Он позволяет задавать условие, при соблюдении которого будет выпол нена одна инструкция, а в противном случае другая.

if (condition) {
statement(s);
} else {
statement(s)2;

Необходимо запомнить, что при любом невыполнении условия if будет ис полнен блок инструкций после else. Другими словами, инструкции после else Представляют собой действия по умолчанию, а блок инструкций после i f ис ключение из правила. Теперь можно переписать страницу numbers.php, вста вив в условную конструкцию оператор else.

Использование оператора else

  1. Откройте файл numbers.php в текстовом редакторе (листинг 6.4).
  2. Сразу же после закрывающей фигурной скобки условной конструкции if (строка 30), напишите следующее:
  3. } else { print ("Please make sure that you have entered both
    —a quantity and an applicable discount and .then resubmit.\n"); }

    Теперь, если страница не получила значение количества, будет распечатано соответствующее сообщение об ошибке.

  4. Сохраните сценарий (листинг 6.5), загрузите его на сервер и протестируй те в браузере (рис. ).

Листинг 6.5 т Часто имеет смысл использовать конструкцию ifelse вмес то простого оператора if, так как обычно нужно выполнять какиелибо дей ствия и в том случа.е, если условие не выполнено.

1 <HTML>
2 <HEAD>
3 <TITLE>Conditionals</TITLE>
4 </HEAD>
5 <BODY>
7 /* Переменная $Quantity должна быть передана в эту страницу из формы.
$Discount необязательна. */
' 8 $Cost =20.00;
9 $Тах = 0.06;
10 if ($Quantity) {
11 SQuantity = abs($Quantity);
12 $Discount = abs($Discount);
13 $Tax++; // $Tax составляет 1.06.
14 $TotalCost = ($Cost * $Quantity);
15 if ( ($TotalCost < 50) AND ($Discount) ) {
16 print ("Your A$$Discount will not apply because the total value
of the sale is under !\n<P>");
17 }
18 if ($TotalCost >= 50) {
19 $TotalCost = $TotalCost $Discount;
20 }
21 $TotalCost = $TotalCost * $Tax,
22 $Payments = round ($TotalCost, 2) / 12;
23 // Печать результатов.
24 print ("You requested to purchase SQuantity widget(s) at $$Cost
each.\n<P>") ;
25 print ("The total with tax, minus your $$Discount, comes to $");
26 printf ("%01.2f", $TotalCost);
27 print (".\n<P>You may purchase the widget(s) in 12 monthly
installments of $");
28 printf ("%01.2f, $Payments);
29 print (" each.\n<P>");
30 } else {
31 print ("Please make sure that you have entered both a quantity and
an applicable discount and then resubmit.\n"); }
32 ?> ' •
33 </BODY>
34 </HTML>
35
Вы можете добавить условную конструкцию с оператором ifelse к сценарию numbers.php, чтобы распечатывалось сообщение, если скидка не предоставляет ся. Также допустимо использовать конструкцию ifelse для печати слова «шту ка» (widget) при заказе одного экземпляра и слова «штук» (widgets) в остальных случаях.