Шаг 6 - Поуправляем ?

Мне кажется не стоит попусту лить воду и описывать тут и так всем известные из других языков программирования структуры управления. Вместо этого я приведу их полный список и все методы их использования.

Оператор IF

Структура:

if (выражение)
	блок_выполнения

Пример использования:

if ($a > $b)
	print "a больше, чем b";
if ($a > $b){
	print "a больше, чем b";
	$b = $a;
}

Оператор ELSE

Пример использования:

if ($a > $b) {
	print "a больше, чем  b";
} else {
	print "a не больше, чем b";
}

Оператор ELSEIF

Интересный оператор. Он применяется в случае, когда вам необходимо использовать IF сразу после ELSE. Пример использования:

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

Оператор if(): ... endif;

Тоже довольно необычная структура. Смысл ее в том, что если условие, записанное в круглых скобах оператора IF оказалось истинным, то будет выполняться весь код, начиная от двоеточия ':' до команды ENDIF;

Пример использования:

<?php if ($a==5): ?>
A = 5
<?php endif; ?>

Или вот еще с использованием вышеописанного оператора ELSEIF

if ($a == 5):
	print "a equals 5";
	print "...";
elseif ($a == 6):
	print "a equals 6";
	print "!!!";
else:
	print "a is neither 5 nor 6";
endif;

Оператор WHILE

Структура:

 while (выражение): блок_выполнения ... endwhile; 

И примерчик:

$i = 1;
while ($i <= 10) {
	print $i++;  
}

Оператор DO...WHILE

Вообщем-то ничего необычного - цикл, как цикл. Выполняется блок выполнения до тех пор, пока справедливо выражение. Структура:

do блок_выполнения while (выражение);

Оператор FOR

Точно такой-же цикл как и в C++. Структура:

for (выражение1; выражение2; выражение3)
	блок_выполнения

Хотя - нет. Есть в PHP еще одно дополнение. Структура:

for (выражение1; выражение2; выражение3):
	блок_выполнения; ...; endfor;

Обратите внимание, на двоеточие перед блоком выполнения.

Оператор break

Старо как мир. Этот оператор позволяет выскакивать из любого цикла (for, while, do...while) до окончания его выполнения. Пример:

 $i = 0;
while ($i < 10) {
	if ($arr[$i] == "stop") {
		break;
	}
	$i++;
}

Оператор continue

Тоже ничего нового. Этот оператор позволяет пропустить дальнейшее действия блока_выполнения любого цикла и продолжить выполнение с нового круга. Пример:

while (выражение) {
	if (выражение2) 
		continue;
	действие;
};

Такая програма аналогична следующей, без использования continue:

while (выражение) {
	if (!выражение2) 
		действие;
};

Оператор switch

Часто очень необходимый оператор выбора. Хотя все его и так знают, попробую представить ясный пример. Допустим у вас есть следующий участок в программе:

if ($i == 0) {
	print "i равно 0";
} else
if ($i == 1) {
	print "i равно 1";
} else
if ($i == 2) {
	print "i равно 2";
} else
	print "ни одно условие не прошло"

Сэкономить время выполнения данного участка, а также представить его более логичным способом поможет нам этот оператор. Следующий пример совершает действия, аналогичные предыдущему, но в более красивой форме:

switch ($i) {
	case 0:
		print "i равно 0";
		break;
	case 1:
		print "i равно 1";
		break;
	case 2:
		print "i равно 2";
		break;
	default:
		print " ниодно условие не прошло"
}

В таком представлении есть и еще одно преимущество. Если вы не поставите оператор break, например, перед case 1:, то в случае, когда $I будет равен нулю после вывода на экран сообщения об этом программа пойдет дальше и выведет также сообщение о том, что $I равна еще и 1 и только после, встретив break; продолжит свое выполнение за пределами switch

Оператор require

Этот оператор действует примерно так-же как и #include в C++. Файл, указанный в кавычках включается в скрипт и выполняется, но только однажды. В файле, включаемом оператором require резонно хранить какие-то данные, необходимые для многих скриптов и соответственно влкючать его в эти "многие" скрипты. Структура его такая:

require 'header.inc';

Оператор include

Структура:

include 'func.inc';

Этот оператор позволяет включать код, содержащийся в указанном файле (func.inc в нашем случае) и выполнять его столько раз, сколько программа встречает этот оператор. То есть. Например, в файле func.inc у нас хранится программа вывода на экран определенных параметров. Ну и каждый раз, когда нам нужно будет выводить эти параметры мы будем вставлять в текст нашей основной программы include 'func.inc', то есть это в принципе тоже самое, как если-бы мы везде в таких случаях вставляли бы текст, содержащийся в файле func.inc

Обратите внимание. Разница между include и require довольно существенная, поэтому поэксперементируйте с ними сами, если вы ее так и не усмотрели.

Ну вот и все. Надеюсь это пригодилось. В следующий раз мы зучим функции PHP, всмысле способы их использования и описания.


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Pismenny Danil - 22.03.2000