У цьому уроці ми розглянемо цикли в PHP, а також приклади коду їх використання.
Цикл в PHP – це керуюча конструкція, яка покликана виконувати блок коду кілька разів. Це означає, що вам не потрібно багато разів копіювати і вставляти код в файл, достатньо тільки використовувати правильну інструкцію циклу.
Приклад коду без циклу:
<?php echo " 1 "; echo " 2 "; echo " 3 "; echo " 4 "; echo " 5 "; echo " 6 "; echo " 7 "; ?>
А з циклом for
це буде виглядати так:
<?php for ($i = 1; $i <= 7; $i++){ echo " $i "; } ?>
Результат (вивід) коду в обох прикладах буде однаковий:
1 2 3 4 5 6 7
Як ви бачите, використання циклу набагато скорочує обсяг коду. Цикли коротші та їх легше розуміти. Крім того, в більшості випадків під час кодування ви не будете знати, скільки разів необхідно виконувати код в блоці.
Тепер давайте подивимося, які є оператори циклу в PHP:
while
do ... while
for
foreach
Ймовірно, це найпростіший цикл в PHP. Його синтаксис досить простий:
while (умова) { // блок коду }
Блок коду буде виконуватися до тих пір, поки умова буде істинною. Реалізація нашого першого прикладу з циклом while
буде виглядати так:
<?php $i = 1; while ($i <= 7) { echo " $i "; $i++; } ?>
Результат буде точно таким же, як і в попередніх прикладах. Однак, якщо ви встановите для змінної ітератора $i
значення 10 ($i = 10
), тоді нічого не буде виводитися, оскільки умова не буде виконуватися. А якщо ж ви забудете додати ітератор автоінкременту (збільшення на одиницю після кожної ітерації), це призведе до нескінченного виконання циклу, оскільки умова ніколи не зміниться, і вона завжди буде істинною. Будьте уважні в таких випадках.
Цей варіант циклу дуже схожий на попередній цикл while
, але він має одну важливу відмінність. З циклом do while
блок коду буде виконаний хоча б один раз. Це пов’язано з тим, що в разі циклу do while
PHP перевіряє умову тільки після першої ітерації. Це добре видно з синтаксису:
<?php do { //блок коду } while (умова) ?>
А окрім цього даний цикл не сильно відрізняється від циклу while
. Нижче приклад того, як використовувати цикл do while
:
<?php $i = 1; do { echo " $i "; $i++; } while ($i <= 7) ?>
Цикл for
– це найскладніший цикл в PHP, але він також і найбільш часто використовується. У разі використання циклу for
ви виконуєте ініціалізацію змінної циклу, робите перевірку умови, а потім оновлюєте змінну циклу і все в одному рядку. Синтаксис циклу for
наступний:
<?php for ( вираз1; умова; вираз2 ) { // блок коду } ?>
Цей синтаксис вимагає трохи більше пояснення.
вираз1
містить частину ініціалізації циклу. Тут ви можете встановити змінну циклу, наприклад, так $i = 1
.умова
– ця частина містить перевірку певної умови. Ви можете написати тут умову, і вона буде перевірятися перед кожною ітерацією. Це означає, що може трапитися так, що блок коду взагалі не буде виконаний.вираз2
вказується інформація для оновлення змінної циклу.Приклад використання циклу for
виглядає так:
<?php for($i = 1; $i <= 7; $i++) { echo " $i "; } ?>
Кожен елемент може бути порожнім або містити кілька виразів, які розділяються комами. Використовуючи цей підхід, наведений вище код можна зробити ще менше. Однак підтримувати такий код буде трохи складніше:
<?php for( $i = 1, $a = 0; $i <= 7; print " $i ", $i++); ?>
Остання структура циклу в PHP – це foreach
. Це спеціальний цикл, оскільки його можна використовувати тільки для масивів. Призначення циклу foreach
– виконати ітерацію по кожному елементу масиву. Якщо ви спробуєте використовувати його зі звичайною змінною, ви отримаєте помилку.
Синтаксис циклу foreach
виглядає так:
<?php foreach (array as $value) { // блок коду } ?>
Він означає, що при кожній ітерації фактичне значення масиву буде копіюватися в змінну $value
, і ви можете використовувати це значення в блоці коду. Отже, розглянемо приклад коду для даного циклу:
<?php // масив даних $firstList = array(1, 2, 3, 4, 5, 6, 7); // перебираємо кожен елемент масиву циклом foreach foreach ($firstList as $value) { echo " $value "; } ?>
Існує альтернативний синтаксис циклу foreach
для обробки асоціативних масивів. Ви можете використовувати його, якщо хочете знати не тільки фактичне значення елемента, але й ключ. Синтаксис циклу foreach
для асоціативних масивів:
<?php foreach (array as $key => $value) { // блок коду } ?>
В цьому випадку ви можете використовувати обидві інформації (ключ і значення) в своєму блоці коду наступним чином:
<?php // масив даних $firstList = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5, 'f' => 6, 'g' => 7); // перебираємо кожен елемент масиву циклом foreach foreach ($firstList as $key => $value) { echo " $key-$value "; } ?>
Консоль браузера (також відома як консоль JavaScript або веб-консоль), — це потужний інструмент для розробників,…
Ніколи не вказуйте на помилки, якщо не знаєте, як їх виправити Джордж Бернард Шоу
Коли необхідно зробити вибір, а ви його не робите, — це теж вибір Вільям Джеймс…
Коли ви ставите перед собою цілі, дуже важливо бути максимально конкретним. Тут не допоможе проста…
Сучасна людина думає, що втрачає час, коли не діє швидко, однак не знає, що робити…
Унікальна елегантність і довговічність: чому варто купити травертин або граніт Натуральний камінь це більше, ніж…