Телефон: +7 (926) 245-03-63

Логические операторы PHP

Следующая статья: Как сделать постраничный вывод данных?

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

if

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

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

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

else

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

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

elseif

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

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

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'; }

if (): … endif;

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

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

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

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

if ($a==5):
echo 'a equals 5';
echo '…';
elseif ($a==6):
echo 'a equals 6';
echo '!!!';
else:
echo 'a is neither 5 nor 6';
endif;

while

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

И примерчик:

$i=1;
while ($i <= 10)
{ echo $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) { echo 'i равно 0'; }
else
if ($i==1) { echo 'i равно 1'; }
else
if ($i==2) { echo 'i равно 2'; }
else
echo 'ниодно условие не прошло'

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

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

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

Интересное в интернете: эвакуация