4. Умовні оператори
Первинні вкладки
Конструкція if
Синтаксис конструкції if аналогічний конструкції if в мові Сі:
1 2 3 | <? Php if (логічний вираз) оператор; ?> |
Згідно виразами PHP, конструкція if містить логічний вираз. Якщо логічний вираз істинно (true), то оператор, наступний за конструкцією if буде виконаний, а якщо логічне вираз помилково (false), то наступний за if оператор виконаний не буде. Наведемо приклади:
1 2 3 | <? Php if ($ a> $ b) echo "значення a більше, ніж b"; ?> |
У наступному прикладі якщо змінна $ a не дорівнює нулю, буде виведено рядок "значення a істинно (true)":
1 2 3 | <? Php if ($ a) echo "значення a істинно (true)"; ?> |
У наступному прикладі якщо змінна $ a дорівнює нулю, буде виведено рядок "значення a ложно (false)":
1 2 3 | <? Php if (! $ a) echo "значення a хибне (false)"; ?> |
Часто вам буде необхідний блок операторів, який буде виконуватися при певному умовному критерії, тоді ці оператори необхідно помістити у фігурні дужки {...} Приклад:
1 2 3 4 5 6 | <? Php if ($ a> $ b) { echo "a більше b"; $ b = $ a; } ?> |
Наведений приклад виведе повідомлення, "a більше b", якщо $ a> $ b, а потім змінна $a буде прирівняна до змінної $b. Зауважимо, що дані оператори виконуються в тілі конструкції if.
Конструкція else
1 2 3 4 | if (логічний_вираз) інструкція_1; else інструкція_2; |
Дія конструкції if-else наступне: якщо логічний_вираз істинно, то виконується
інструкція_1, а інакше - інструкція_2. Як і в будь-якому іншому мовою, конструкція else може опускатися, в цьому випадку при отриманні належного значення просто нічого не робиться.
Якщо інструкція_1 або інструкція_2 повинні складатися з декількох команд, то
вони, як завжди, полягають у фігурні дужки. Наприклад:
1 2 3 4 5 6 7 | <? Php if ($ a> $ b) { echo "a більше, ніж b"; } Else { echo "a НЕ більше, ніж b"; } ?> |
Конструкція elseif
elseif - це комбінація конструкцій if і else. Ця конструкція розширює умовну конструкцію if-else.
1 2 3 4 5 6 7 8 9 | <? Php if ($ a> $ b) { echo "a більше, ніж b"; } Elseif ($ a == $ b) { echo "a дорівнює b"; } Else { echo "a менше, ніж b"; } ?> |
Взагалі, конструкція elseif не надто зручна, тому застосовується не так часто.