Цикл for в PHP
Одним з основних завдань комп`ютерів є обробка великих обсягів даних, у людини це заняття вимагало б дуже великих витрат часу. Для виконання складних обробок і були придумані цикли. Розглянь цикл for. Буває, що необхідно повторити якийсь із шматочків коду певне число раз, ось тоді і приходять цикли на допомогу. Цикл for - один з найпопулярніших.
Оператори, які часто використовують у циклі for
Спочатку давайте розглянемо групу операторів, часто використовувану в циклах. Їх називають инкрементом і декрементом. Оператор инкремента записують двома плюсами (++), він здійснює збільшення на одиницю. Декремент, навпаки, зменшує значення на 1, позначають його двома мінусами (-). Дані оператори застосовують у ролі лічильника. При використанні PRE-декремента / инкремента відбувається зменшення / збільшення змінної, а потім вже це значення використовується. В POST-декрементом / Інкремент змінну спочатку використовують, а вже потім відбувається її зменшення або збільшення.
Синтаксис
Цикл for виробляє виконання блоку команд до тих пір, поки певну умову істинне. Іншими словами, це набір команд, який робиться повторно, поки виконається задана умова.
Вважають, що цикл for один з найскладніших в PHP. Його синтаксис такий:
for (часть_1- часть_2- часть_3)
{Код-}
Особливо цікаво те, що всередині круглих дужок. Як бачите, там три частини. Розділені вони крапкою з комою. Там, де часть_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 можна вирішити багато завдань!