Page 33 - 4636
P. 33
<td align = "right">150</td>
<td align = "right">15</td>
</tr>
<tr>
<td align = "right">200</td>
<td align = "right">20</td>
</tr>
<tr>
<td align ="right">250</td>
<td align = "right">25</td>
</tr></table></body></html>
Замість того, щоб доручати введення HTML-коду людині, якій виконання такого завдання швидко
набридає і якій, до того ж, необхідно платити за витрачений час, краще і дешевше доручити цю справу
невтомному комп'ютеру. Оператори циклу вказують РНР про необхідність багаторазового виконання
того чи іншого оператора або блока операторів.
Цикли while
Найпростішим видом циклу в РНР є, мабуть, цикл while. Подібно оператору іf, в основі цього
оператора лежить перевірка умови. Відмінність між циклом while і оператором if полягає в тому,
що якщо умова набуває значення true, якщо оператор виконує наступний за ним блок коду тільки
один раз. Цикл while виконує блок операторів багаторазово, поки умова продовжує бути рівною
true.
Загалом цикл while використовують, коли не відомо, для скількох ітерацій буде виконуватися
умова. Якщо ж потрібно виконати фіксоване число ітерацій, варто подумати про використання циклу
for.
Базова структура циклу while має такий вигляд:
while (умова) вираз;
Показаний нижче цикл while виводить на екран числа від 1 до 5.
$num = 1;
while ($num <= 5) { echo $num."<br />";
$num++;
}
Умова перевіряється на початку кожної ітерації. Якщо вона набуває значення false, блок
операторів виконуватися не буде і цикл завершується. Після цього виконується оператор, наступний за
циклом.
Цикл while можна використовувати для виконання чогось більш корисного, наприклад, для
відображення повторюваної таблиці вартості доставки, яка була показана на рис. 1.7.
У лістингу 1.3 цикл while використовується для побудови таблиці вартості доставки.
Лістинг 1.3. freight.php - Генерація таблиці вартості доставки компанії “Автозапчастини від
Вована” за допомогою РНР
<html>
<body>
ctable border="0" cellpadding="3”>
<tr>
<td bgcolor = "#CCCCCC" align = "center">Відстань</td>
<td bgcolor = "#CCCCCC" align = "center">Вартість</td>
</tr>
<?php
$distance = 50; while ($distance <= 250) ( echo "<tr>
30