Приднестровская поддержка XOOPS
Цикл for используется для выполнения выражений определенное число раз.
Имеет следующий формат:
for (<Начальное значение>; <Условие>; <Приращение>) {
<Выражения>
}
Здесь присутствуют следующие конструкции:
□ <Начальное значение> присваивает переменной-счетчику начальное значение;
□ <Условие> содержит логическое выражение. Пока логическое выражение возвращает значение true, выполняются выражения внутри цикла;
□ <Приращение> задает изменение переменной-счетчика при каждой итерации.
Последовательность работы цикла for:
1. Переменной-счетчику присваивается начальное значение.
2. Проверяется условие; если оно истинно, выполняются выражения внутри цикла, а в противном случае выполнение цикла завершается.
3. Переменная-счетчик изменяется на величину, указанную в <Приращение>.
4. Переход к п. 2.
Цикл выполняется до тех пор, пока <Условие> не вернет false. Если это не случится, цикл будет бесконечным.
<Приращение> может не только увеличивать значение переменной-счетчика, но и уменьшать. Выведем все числа от 100 до 1:
for ($i=100; $i>0; $i--) echo $i . "<br>\n";
<Приращение> может изменять значение переменной-счетчика не только на единицу. Выведем все четные числа от 1 до 100:
for ($i=2; $i<101; $i+=2) echo $i . "<br>\n";
Следует заметить, что выражение, указанное в параметре <Условие>, вычисляется на каждой итерации. Рассмотрим вывод элементов массива:
$arr = array(1, 2, 3);
for ($i=0; $i<count($arr); $i++) {
if ($i == 0) {
$arr[] = 4; // Добавляем новые элементы
$arr[] = 5; // для доказательства
}
echo $arr[$i] . " ";
} // Выведет: 1 2 3 4 5
В этом примере мы указываем функцию count() в параметре <Условие>, а внутри цикла (чтобы доказать вычисление на каждой итерации) добавляем новые элементы в массив. В итоге получили все элементы массива, включая новые элементы. Чтобы этого избежать следует вычисление размера массива указать в первом параметре:
$arr = array(1, 2, 3);
for ($i=0, $c=count($arr); $i<$c; $i++) {
if ($i == 0) {
$arr[] = 4; // Добавляем новые элементы
$arr[] = 5; // для доказательства
}
echo $arr[$i] . " ";
} // Выведет: 1 2 3
Отправитель | Нити |
---|
5 пользователь(ей) активно (3 пользователь(ей) просматривают Инструкции)
Участников: 0 Гостей: 5 далее... |