Одной из основных задач компьютеров является обработка больших объемов данных, у человека это занятие потребовало бы очень больших затрат времени. Для выполнения сложных обработок и были придуманы циклы. Рассмотри цикл for. Бывает, что необходимо повторить какой-то из кусочков кода определенное число раз, вот тогда и приходят циклы на помощь. Цикл for - один из самых популярных.
Операторы, которые часто используют в цикле for
Сначала давайте рассмотрим группу операторов, часто используемую в циклах. Их называют инкрементом и декрементом. Оператор инкремента записывают двумя плюсами (++), он осуществляет увеличение на единицу. Декремент, наоборот, уменьшает значение на 1, обозначают его двумя минусами (--). Данные операторы применяют в роли счетчика. При использовании PRE-декремента/инкремента происходит уменьшение/увеличение переменной, а потом уже это значение используется. В POST-декременте/инкременте переменную сначала используют, а уже потом происходит ее уменьшение или увеличение.
Видео: Цикл for PHP
Синтаксис
Цикл for производит исполнение блока команд до тех пор, пока определенное условие истинное. Иными словами, это набор команд, который делается повторно, пока выполнится заданное условие.
Видео: PHP урок 12 Циклы While, Foreach, For
Считают, что цикл for один из сложных в PHP. Его синтаксис такой:
for (часть_1- часть_2- часть_3)
Видео: [PHP]Цикл foreach(Урок 18)
{Код-}
Особенно интересно то, что внутри круглых скобок. Как видите, там три части. Разделены они точкой с запятой. Там, где часть_1 PHP делает то, что ему говорится. Если там выражение, то оно исполняется. Как правило, здесь задействован счетчик. В части_2 находится if, тут проверяется, истинно ли то, что в части_1, если да (true) , то PHP выполняет код, который внутри фигурных скобок. В части третьей происходит увеличение или уменьшение счетчика.
Рассмотрим цикл for php на примере
В части_1 цикла переменной $a присваивается значение 0. Далее проверяется, меньше ли $a, чем 20? Если меньше, то будут выполняться команды, которые находятся в теле цикла. В нашем примере выводится: "Эта строка выведется 20 раз ", затем в третьей части происходит увеличение $a на 1. После этого опять идет возврат во вторую часть, снова проверяется, меньше 20 наша переменная или нет. Меньше? Тогда опять идет выполнение команды (вывод строки) пока $a не станет больше, чем 20.
Задачка
Выполним небольшое задание. Есть некоторое предложение: "Привет, люди!" Надо вывести данную фразу вертикально. Как это делается?
Нам понадобится для решения поставленной задачи PHP цикл for. Вспоминаем о функции strlen(), возвращающей длину строчки.
У примера 1 написано - Как не следует делать? Это неплохой код, он работает. Но делать так нельзя. Чтобы понять почему, посмотрим, как работает PHP. Сначала переменной $i присвоится 0. Далее идет подсчет символов у строки и проверка, что ноль меньше данного количества. Выполняется код цикла, происходит вывод первой буквы. Затем $i увеличивается на 1, опять идет подсчет символов строки, проверка, что $i меньше полученного количества, снова идет выполнение кода. Каждый раз выполняется strlen(), идет подсчет числа символов. Хорошо, что у нас строка не такая длинная.
Если строка статичная, воспользуйтесь другими вариантами.
В варианте первом функция strlen вынесена за цикл for.
Во втором варианте все оставлено в цикле for.
При помощи цикла for в PHP можно решить многие задачки!