Оригинальный DVD-ROM: eXeL@B DVD !
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 12 ноября!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

Операторы языка PHP II часть


Автор: http://www.softtime.ru < >

Операторы цикла
  
  Операторы цикла задают многократное исполнение операторов в теле цикла. В PHP определены 4 разных оператора цикла:
  
  цикл с предусловием:
  

  while(condition)
  {
    statements;
  }
  

  цикл с постусловием:
  
  

  do
  {
    statements;
  } while(condition);
  

  
  итерационный цикл:
  

  for(expression1;expression2;expression3)
  {
    statements;
  }
  

  итерационный цикл foreach:
  

  foreach (array as [$key =>] $value)
  {
    statements;
  }
  

  Если 3 первых оператора цикла берут свое начало от С-подобных языков, то последний оператор позаимствован у языка Perl
  
  Оператор while называется оператором цикла с предусловием. При входе в цикл вычисляется выражение условие, и, если его значение отлично от нуля, выполняется тело цикла. Затем вычисления выражения условия и операторов тела цикла выполняется до тех пор, пока значение выражения условия не станет равным нулю. Оператором while удобно пользоваться для просмотра всевозможных последовательностей, если в конце них находится заранее известный символ. (Это очень удобно в C++, к примеру для определения длины строки, поскольку в С++, по определению, строка есть последовательность символов типа char, заканчивающаяся нулевым символом).
  
  Пример простейшего цикла while:
  

  <?
    $var = 5;
    $i = 0;
    while(++$i <= $var)
    {
        echo($i); echo('<br>'); 
    }
  ?>
  

  Для выхода из цикла применяется оператор break. При обнаружении этого оператора текущая итерация цикла прекращается, и последующие итерации не происходят. При выполнении следующего примере, несмотря на то, что переменная $var = 7, в окне браузера появятся цифры от 1 до 3.
  

  <?
    $var = 7;
    $i = 0;
    while(++$i <= $var)
    {
        echo($i);
        echo('<br>');
        if($i==3)break;
    }
  ?>
  

  Иногда бывает нужно прервать только текущую итерацию, и перейти сразу к следующей. Для этого применяется оператор continue:
  

  <?
    $var = 7;
    $i = 0;
    while(++$i <= $var)
    {
        if($i==5)
        {
          continue;
        }
        echo($i);
        echo('<br>');
    }
  ?>
  

  Операторы цикла/ Do…while
  
  Этот оператор называется оператором цикла с постусловием. При входе в цикл в любом случае выполняется тело цикла (т.е. цикл всегда будет выполнен хотя бы один раз), затем вычисляется условие, и если оно не равно 0, вновь выполняется тело цикла. В нижеследующем примере ноль всегда будет добавлен в список, независимо от условия (++$i <= $var):
  

  <?
    $var = 5;
    $i = 0;
    do
    {
        echo($i); echo('<br>'); 
    }
    while(++$i <= $var)
  ?>
  

  Операторы цикла/ For
  
  Как уже говорилось, итерационный цикл имеет следующий формат:
  

    for(expression1;expression2;expression3)
    {
        statements;
    }
  

  Здесь expression1 (инициализация цикла) – последовательность определений и выражений, разделяемая запятыми. Все выражения, входящие в инициализацию, вычисляются только один раз при входе в цикл. Как правило, здесь устанавливаются начальные значения счетчиков и параметров цикла. Смысл выражения-условия (expression2) такой же как и у циклов с пред- и постусловиями. При отсутствии выражения-условия предполагается, что его значение всегда истинно. Выражения expression3 вычисляются в конце каждой итерации после выполнения тела цикла.
  
  В следующем скрипте, мы по традиции выведем числа от 0 до 5:
  

  <?
    $var = 5;
    $i = 0;
    for ($i = 0; $i <= $var; $i++)
    {
        echo($i);
        echo('<br>');
    }
  ?>
  


Оригинальный DVD-ROM: eXeL@B DVD !


Вы находитесь на EXELAB.rU
Проект ReactOS