Як правило, вирази в php програмі виконуються в порядку їх написання у вихідному коді. Для зміни цього порядку потрібно використовувати умовні конструкції. Така необхідність виникає перед програмістом php практично в будь-якій програмі, коли при виконанні певної умови повинен виконуватися один блок скрипта, а при виконанні іншої умови – інший. Таким чином, PHP сценарії – дуже гнучкі і можуть залежати від безлічі умов.
Основою роботи всіх конструкцій є перевірка умов на істинність або хибність. Залежно від результату такої перевірки інтерпретується той чи інший блок php скрипта. Давайте розглянемо наступний приклад:
$color=«Червоний»
Якщо змінна $color буде мати значення «Червоний», то вираз – істинний, в іншому ж випадку він – помилковий. Результатом такого виразу можуть бути TRUE або FALSE відповідно. У мові PHP є 2 основні умовні конструкції: if і switch. Хоча у них і однакові завдання, кожна використовується зазвичай в окремих випадках.
Конструкція if
У мові PHP є кілька способів запису конструкції if. У самому простому if перевіряє хибність або істинність певної умови і залежно від результату перевірки виконує або не виконує групу виразів, розміщених у фігурних дужках.
У даному випадку конструкція if буде мати наступний формат запису:
|
1
2
3
4
5
|
<?phpif(якась умова){Блок виразів}?> |
Код в фігурних дужках буде виконуватися, якщо умова істинна. В іншому випадку блок виразів буде просто пропущений.
Розглянемо приклад:
|
1
2
3
4
5
6
|
<?php$b=5;if($b<10){echo $b . «менша десяти»;}?> |
У цьому прикладі змінній $b присвоюється значення 5. Потім виконується порівняння 5<10. Як ми бачимо, воно - істинне, тому код у фігурних дужках буде виконуватися. У результаті на екран буде виведена фраза 5 менше десяти. Наведений вище спосіб запису може бути трохи ускладнений за допомогою команди else. Синтаксис розширеного формату наступний:
|
1
2
3
4
5
6
7
8
|
<?phpif(якась умова){Блок виразів}else{Інший блок виразів}?> |
Якщо умови в if – істинні , тоді буде виконуватися перший блок виразів, якщо помилкові – другий блок.
На цьому можливості if не закінчуються. У скрипт можна додавати будь-яку кількість додаткових перевірок. Для цього використовується команда elseif. Тоді спосіб запису повної форми if може бути, наприклад, таким:
|
1
2
3
4
5
6
7
8
9
10
11
|
<?phpif(якась умова){Блок виразів 1}elseif{Альтернативний блок виразів 2}else{Альтернативний блок виразів 3}?> |
В теорії кількість блоків elseif не обмежується, проте не потрібно захоплюватися їх створенням. Для закріплення матеріалів уроку про конструкції if розглянемо ще один приклад:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
<?phpif (!$_POST[“submitt”]){echo “<form action=’’ method=’POST’><h3>Вкажіть число:</h3><input type=’text’ name=’digit’><input type=’submit’ name=’submitt’ value=’ok’></form>”;}else{$digit=$_POST[“digit”];if ($digit<0){echo “Дане число менше нуля”;}elseif ($digit>=0){echo “Це число більше чи дорівнює нулю”;}else{echo “Це не число”;}}?> |
У цьому прикладі на екран виводиться форма для введення будь-якого числа. Після відправки введені дані перевіряються і, залежно від результату, виводиться те або інше повідомлення. Зверніть увагу! За логікою, якщо замість числа ввести, наприклад, звичайний рядок – «hello», то на екрані має з’явитися “Це не число”. Але насправді буде виконуватися умова $digit>=0, так як мова php автоматично перетворює типи даних, а в даному випадку рядок буде дорівнювати 0.








