Page 35 - 4636
P. 35
Динамічно генеруючи імена змінних, можна звертатися до кожного з полів по черзі. Поряд з
циклом for існує цикл foreach, спеціально призначений для роботи з масивами.
Цикли do, while
Загальна структура оператора do. .while має такий вигляд:
do
вираз;
while (умова);
Цикл do, while відрізняється від циклу while тим, що в ньому умова перевіряється в кінці. Це
означає, що в циклі do, while оператор або блок операторів усередині циклу завжди виконується,
принаймні, один раз.
Навіть у наведеному нижче прикладі, де умова з самого початку має значення false і ніколи не
може набувати значення true, цикл виконається один раз до того, як умова буде перевірено і цикл
завершиться.
$num = 100;
do {
echo $num."<br />";
} while ($num < 1) ;
1.19 Вихід з керуючої структури або сценарію
Якщо необхідно зупинити виконання деякого фрагмента, можна скористатися одним з трьох
підходів залежно від ефекту, який бажано отримати.
Якщо необхідно припинити виконання циклу, можна скористатися оператором break, як було
описано раніше. У разі застосування оператора break в циклі виконання сценарію продовжиться,
починаючи з рядка наступної за циклом. Якщо потрібно перейти до наступної ітерації циклу, можна
скористатися оператором continue.
Для завершення виконання всього РНР-сценарію служить оператор exit. Зазвичай цей оператор
використовується при перевірці на помилки. Наприклад, наведений раніше приклад можна було б
змінити наступним чином:
if ($totalqty == 0) { echo "Ви нічого не замовили на попередній
сторінці!<br />";
exit;
}
Оператор exit припиняє виконання решти РНР-сценарію.
1.20 Використання альтернативного синтаксису керуючих структур
Для всіх розглянутих вище керуючих структур передбачена альтернативна форма синтаксису, за
якої відкрита фігурна дужка ({) замінюється двокрапкою (:), а закриває фігурна дужка (}) - новим
ключовим словом, яким може бути endif, endswitch, endwhile, endfor або endforeach,
залежно від використовуваної керуючої структури. Альтернативна форма синтаксису недоступна для
циклів do. .while.
Наприклад, показаний нижче код:
if ($totalqty == 0) { echo "Ви нічого не замовили на попередній
сторінці !<br />";
exit;
}
може бути перетворений з використанням ключових слів if і endif таким чином:
32