belarusweb.net
© Петр Романовский Минск, 2016-2017.



belarusweb.net

Основы создания сайтов...

PHP+MySQL >>>

                          Учебник Задачник Справочник

4.2. Условный оператор if

Если говорить в общем, то условные операторы позволяют пропустить или выполнить некоторый блок кода в зависимости от результата вычисления своего условного выражения (условия). Простейшим из условных операторов является оператор if, который вычисляет значение своего условного выражения, преобразуя его по необходимости в булев тип, и по результатам вычисления принимает решение – если конечный результат имеет значение true, то интерпретатор выполняет указанный фрагмент кода, а если конечный результат имеет значение false, то интерпретатор пропускает данный фрагмент кода и начинает выполнять следующую за условным оператором инструкцию. Использование условного оператора if показано в примере 4.1.

<?php
$a=5; 	//Присвоили переменной число

if($a>0){//В круглых скобках записывается условие оператора if
$a=++$a; //Код, который выполняется в случае истинности условия
			//заключается в фигурные скобки, т.е. в тело оператора
}			//Точку с запятой после фигурных скобок не ставят

echo $a; //Выведет 6, т.к. условие оператора if оказалось истинным,
			//поэтому инструкция в теле оператора, т.е. между
			//открывающей и закрывающей фигурными скобками, была выполнена, 
			//Если бы условие оказалось ложным, то весь код в теле 
			//оператора if был бы пропущен и оператор echo вывел бы 5
?>

Пример 4.1. Условный оператор if и его синтаксис

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

Если в зависимости от результата проверки условного выражения нужно выполнить одну из двух инструкций, то оператор if расширяется при помощи оператора else, который в случае, если значение условия равно false, позволяет выполнить альтернативную инструкцию (см. пример 4.2).

<?php
$a=5;		//Присвоили переменной число

if($a<0){// В круглых скобках записывается условие оператора if
$a=++$a; //Код, который выполняется в случае истинности условия,
			//заключается в фигурные скобки до ключевого слова else
}else{   //Код, который выполняется в случае ложности условия,
			//заключается в фигурные скобки после ключевого слова else
$a=--$a;	
}        //Точку с запятой после фигурных скобок не ставят

echo $a; //Выведет 4, т.к. условие оператора if оказалось ложным,
			//поэтому была выполнена вторая инструкция 
?>

Пример 4.2. Расширение оператора if при помощи ключевого слова else

Более того, если значение условия оператора if окажется ложным, имеется возможность не просто выполнить альтернативную инструкцию, а выбрать ее из нескольких подходящих вариантов. Для этого оператор if расширяется при помощи оператора elseif, который по сути служит для объединения двух соседних операторов if (см. пример 4.3).

<?php
$a=5; 				//Присвоили переменной число

if($a<0){ 			// В круглых скобках записывается условие оператора if
$a=-1; 				//Код, который выполняется в случае истинности условия
}elseif($a==0){   
$a=0;					//Выполняется в случае ложности предыдущего условия
}elseif($a>0&&$a<=5){   
$a=1;       		//Выполняется в случае ложности всех предыдущих условий
}else{   
$a=++$a;       	//Выполняется в случае ложности всех предыдущих условий
}						//Точку с запятой после фигурных скобок не ставят

echo $a; 			//Выведет 1, т.к. первым истинным условием является $a>0&&$a<=5
?>

Пример 4.3. Расширение оператора if при помощи ключевого слова elseif

Как видно из примера, можно применять сразу несколько операторов elseif. При этом, в отличие от оператора else, при использовании оператора elseif выполнение альтернативного выражения произойдет только тогда, когда его условие будет иметь значение true, а условные выражения всех предыдущих аналогичных операторов будут иметь значения, равные false.

Ключевые слова else и if разрешается писать отдельно в формате языка JavaScript, т.е. в виде else if. Однако следует помнить, что при использовании альтернативного синтаксиса с применением двоеточия так делать нельзя. Но, поскольку мы не будем ни рассматривать, ни пользоваться альтернативным синтаксисом – оба варианта можно считать равнозначными.

Контрольные вопросы и задания

  1. Опишите условный оператор if. Разрешается ли использование вложенных операторов if?
  2. Каков синтаксис использования оператора elseif?

Словарь новых английских слов

if [if] – если.
else [els] – иначе, еще.
switch [swɪtʃ] – переключение.       
case [keɪs] – блок, контейнер.
break [breɪk] – прерывать.
while [wʌɪl] – до тех пор пока.
do [duː] – делать.
for [fɔː] – для.
each [iːtʃ] – каждый.
continue [kənˈtɪnjuː] – продолжать.
default [dɪˈfɔːlt] – по умолчанию.
key [kiː] – ключ.
as [æz] – как.
value [ˈvaljuː] – значение.
Комментарии (0)
Петр Романовский
1. Приветствуются комментарии, которые содержат дополнения к материалу текущей страницы, а также ваши ответы на вопросы других пользователей.
2. Если вам что-то непонятно - спрашивайте, не забывая написать, что именно и с какого места.
Показаны все комментарии
Чтобы оставить свой комментарий, авторизуйтесь, пожалуйста!    
     
belarusweb.net © Петр Романовский, Минск, 2016-2017.
Связаться с автором
Наверх