9 Конструкції мови
Особливістю конструкцій цієї мови є простота. if-else, while, for, foreach, case - основні конструкції мови. Розглянемо кожну з них детальніше.
Зміст |
if-else
if (умова) інструкції; // якщо тут знаходиться кілька команд, то вони закриваються у фігурні дужки {}. else інші інструкції; // якщо тут знаходиться кілька команд, то вони закриваються у фігурні дужки {}.
Якщо виконується умова після слова if, то виконуються інструкції. Якщо вона не виконується, то виконуються інструкції після else. Приклад:
<?php $a=5 $b=6 if ($a==$b) echo "$a рівне $b else echo "змінні не рівні" ?>
Цей приклад виведе на екран "змінні не рівні".
Цикл з передумовою
Форма запису:
while (умова) інструкції;
Команди в тілі циклу виконуються, поки умова в заголовку циклу істинно. При першому проході насамперед перевіряються умови. Таким чином інструкції циклу можуть бути так і не виконані жодного разу, якщо умова помилкова. Якщо в тілі циклу треба розмістити кілька дій, то вони як і в if закриваються у фігурні дужки.
$i=1 while ($i<4) { echo $i; $i++; }
У даному прикладі інструкції циклу виконуватися три рази. Точно так само справа йде і з циклом do-while (цикл з післяумовою).
Перевірка умови виконується після проходу інструкцій циклу.
do { інструкції; } while (умова);
Цикл for
for (попередні команди; умова циклу; команди після проходу) команди циклу;
Коли управління доходить до циклу, виконуються "ініціалізуючі команди". Після перевіряються "умови". Якщо вони істинні виконуються "команди циклу". Після кожного проходу виконуються "команди після проходу".
for ($i = 0; $i> 5; $i ++) {$а = $i; echo '$a'; }
"Ініціалізуючих команд", "умов", "команд після проходу" може бути декілька. У цьому випадку вони вказуються через кому:
for ($i=0, $k=4; $i>4, $k>15; $i++, $k++;)
Цикл foreach
Цей цикл був введений тільки в четвертій версії мови php. Служить він спеціально для перебору масивів.
foreach (as $ключ=>$значення) команди;
Команди виконуються для всіх пар ключ-значення. При цьому ключ виявляється в змінній $ключ, а його значення - відповідно у змінній $значення.
Конструкція switch-case
Цю конструкцію зручно використовувати замість декількох наступних підряд конструкцій if-else.
switch (Вираз) { case значення1: команди- break case значення2: команди- break .................. case значенняn: команди- break default: команди }
Працює ця конструкція так:
- Вичисляється значення виразу;
- Проходить пошук рядка починається з case значення виразу.
- Якщо такий рядок існує, то виконуються тільки ті команди, які розташовані після неї.
В іншому випадку виконуються команди після default (цього рядка може і не бути, він не обов'язковий). Оператор break потрібно вказувати після кожного рядка, для того, щоб виконувались тільки одна пара значення-команди.