Язык программирования PHP | страница 22



Управляющие конструкции


Условные операторы


Оператор if


Это один из самых важных операторов многих языков, включая PHP. Он позволяет выполнять фрагменты кода в зависимости от условия. Структуру оператора if можно представить следующим образом:


>if (выражение) блок_выполнения


Здесь выражение есть любое правильное PHP-выражение (т.е. все, что имеет значение). В процессе обработки скрипта выражение преобразуется к логическому типу. Если в результате преобразования значение выражения истинно (True), то выполняется блок_выполнения. В противном случае блок_выполнения игнорируется. Если блок_выполнения содержит несколько команд, то он должен быть заключен в фигурные скобки { }.


Правила преобразования выражения к логическому типу:


- логическое False


- целый ноль (0)


- действительный ноль (0.0)


- пустая строка и строка "0"


- массив без элементов


- объект без переменных (подробно об объектах будет рассказано в одной из следующих лекций)


- специальный тип NULL


- Все остальные значения преобразуются в TRUE.


>

>$names = array("Иван","Петр","Семен");

>if ($names[0]=="Иван") {

> echo "Привет, Ваня!";

> $num = 1;

> $account = 2000;

>}

>if ($num) echo "Иван первый в списке!";

>$bax = 30;

>if ($account > 100*$bax+3)

> echo "Эта строчка не появится

> на экране, так как условие не выполнено";

>?>


Оператор else


Мы рассмотрели только одну, основную часть оператора if. Существует несколько расширений этого оператора. Оператор else расширяет if на случай, если проверяемое в if выражение является неверным, и позволяет выполнить какие-либо действия при таких условиях.


Структуру оператора if, расширенного с помощью оператора else, можно представить следующим образом:


>if (выражение) блок_выполнения

>else блок_выполнения1


Эту конструкцию if...else можно интерпретировать примерно так: если выполнено условие (т.е. выражение=true), то выполняем действия из блока_выполнения, иначе – действия из блока_выполнения1. Использовать оператор else не обязательно.


Посмотрим, как можно изменить предыдущий пример, учитывая необходимость совершения действий и в случае невыполнения условия.


>

>$names = array("Иван","Петр","Семен");

>if ($names[0]=="Иван") {

> echo "Привет, Ваня!";

> $num = 1;

> $account = 2000;

>} else {

> echo "Привет, $names[0].

> А мы ждали Ваню :(";

>}

>if ($num) echo "Иван первый в списке!";

>else echo "Иван НЕ первый в списке?!";

>$bax = 30;

>if ($account > 100*$bax+3)

> echo "Эта строка не появится на экране,