Цикл під назвою while в PHP має свої особливості. Давайте їх розберемо.
Цикл while перекладається як «поки умова істинна (true)». Записується він так:
Для того, щоб цей цикл while працював, у нас в умови повинно бути true. Давайте відразу подивимося приклад:
Тут майже все точно також як в циклі for. Ми присвоюємо змінної якесь значення, а далі крутиться цикл, до тих пір, поки $ i менше 50, у нас буде виконуватися код всередині циклу, тобто висновок змінної $ int. І for і while - вони взаємозамінні. Тому можна використовувати або while, або for.
Однак, для того щоб все таки відчути різницю в їх використанні, скажу, що цикл for я використовую в тих випадках, коли мені заздалегідь відомі початкове і кінцеве значення. Наприклад, мені потрібно прокрутити цикл від 1 до 100, тоді я використовую for. А ось коли нам заздалегідь не відома кінцева точка, як наприклад, ми будемо розбирати це далі, читання файлу через підрядник. Тут ніколи не знаєш скільки у файлу рядків. Ось в цьому випадку дуже добре підходить цикл while.
Вообщем тут нічого складного немає, все як з циклом for. До речі про цикл for можна прочитати в статті цикл FOR в PHP.
Давайте тоді розглянемо завдання, яке ми робили з циклом for, тільки тепер ми його виконаємо з циклом while:
Використовуючи цикл while виведіть в стовпчик непарні числа від 1 до 100!
Ось як можна це зробити:
Тепер давайте трохи повернемося до циклу for. Справа в тому, що у циклу for частини з яких він складається, а ми пам'ятаємо, що їх всього три, так ось кожна з частин може бути пропущена, але при цьому мають залишитися крапки з комою. Ось як це виглядає:
Або ось наприклад, нескінченний класичний цикл:
Будь-яка з частин може пропускатися, але крапки з комою в обов'язковому порядку повинні бути.
Розбираємося далі. Бувають ситуації, коли цикл повинен пройти цілком, але і буває так, що при якійсь ситуації він повинен перерватися. Для цього у нас є можливість управляти ними.
Спосіб номер раз - відомий нам з switch, оператор break.
Оператор break викидає нас з циклу при виникненні якогось умови. У цьому прикладі, якщо $ n дорівнюватиме 10, ми вилітаємо з циклу і цикл зупиняється. І в браузер нам виведеться 123456789 і все, так як у нас є умова, якщо $ n == 10, цикл зупиниться.
Другий спосіб управління циклами - це оператор continue. Що означає - продовжити.
На відміну від break, оператор continue перекидає нас назад до умови. Цей приклад, на відміну від першого, виведе все крім числа 10.
У циклу while, та й циклу for теж є один недолік. Вони можуть ніколи не здійснитися, якщо початкова умова буде false. наприклад:
Я думаю зрозуміло чому він не запуститься? Якщо немає, зверніть увагу на умову в циклі - $ n ООП PHP web 4GL - візуальні середовища