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