PHP :: Цикл for
Еще одним циклом в PHP является цикл for. Прежде, чем описать его синтаксис давайте рассмотрим пример №1.
<?php //Присвоили переменной стартовое значение $a=3; //Выражения в условии отделяются точками с запятой for($i=1;$i<5;$i++){ //Код в теле цикла выполняется в случае //истинности второго выражения в условии цикла echo $a=++$a; } /* Первое выражение в условии цикла вычисляется только один раз в самом начале цикла, а его результат представляет собой некоторое стартовое значение */ /* Второе выражение является условным: если оно принимает значение true, то цикл продолжается, и код в теле цикла будет выполнен; если же оно принимает значение false, выполнение цикла заканчивается */ /* Третье выражение вычисляется в конце каждой итерации перед началом следующей проверки второго (условного) выражения */ ?>
Пример №1. Цикл for
Итак, сперва записывается ключевое слово for, затем в круглых скобках через точку с запятой записываются три выражения (условие цикла), после чего фигурными скобками формируется тело цикла, в котором находится выполняемый циклом код. Первое выражение в условии вычисляется только один раз в самом начале цикла, а его результат представляет собой некоторое стартовое значение, например, счетчика цикла. Второе выражение является условным: если оно принимает значение true, то цикл продолжается, и код в теле цикла будет выполнен; если же оно принимает значение false, то выполнение цикла прерывается. Третье выражение вычисляется в конце каждой итерации перед началом следующей проверки второго (условного) выражения и обычно увеличивает стартовое значение цикла на единицу.
Отметим, что каждое из выражений условия цикла может быть пустым или содержать несколько выражений, разделенных запятыми. Несколько выражений могут понадобиться, например, если используется более одного счетчика цикла. Однако следует иметь в виду, что условные выражения во второй части условия цикла, хоть и вычисляются все, – результат используется только последнего из них. Кроме того, если условное выражение вообще отсутствует, то интерпретатор неявно воспринимает это значение как true, и цикл будет выполняться бесконечно. Данный прием может быть полезен, когда необходимо прервать цикл в нужный момент, используя оператор break. Чтобы было понятнее, давайте рассмотрим пример №2.
<?php for($i=1; $i<=5; $i++){ //За цикл выведет 12345 echo $i; } echo '<br>'; for($i=1; ;$i++){ if($i>5){ //Иначе цикл будет бесконечным break; } //За цикл также выведет 12345 echo $i; } echo '<br>'; for($i=1,$k=1; $i<=3; $i++,$k*=5){ //За цикл выведет 1 1 2 5 3 25 echo $i.' '.$k.' '; } ?>
Пример №2. Использование цикла for
Напомним, что все виды циклов могут иметь вложенные циклы и условные инструкции, позволяя нужным образом изменять дальнейший ход выполнения программы.