Страница 1 из 11
Форум » Web дизайн » PHP » Ветвление в PHP (Не, не деревья растить будем, а программы =]])
Ветвление в PHP
DlX Дата: Понедельник, 29.08.2011, 09:42 | Сообщение # 1
DlX
Прохожий
Сообщений: 3
Репутация: 1
Страна: Российская Федерация
Город: Омск
Область: Омская область
Статус: Offline
Сегодня мы с Вами рассмотрим такую важную вещь в PHP, как ветвление. Считайте, что это самая-самая основа, и без нее никуда.
Ветвления делятся на ветвления полной и неполной формой. Неполная и полная формы, в свою очередь деляться на ветвления с одним условием и двумя условиями.
Рассмотрим с вами одну из самых простых форм ветвлений. Это будет полная форма с 1 условием. Выглядеть она будет примерно так:
Code
If (логич. выражение)
инструкия1;
else
инструкия2;

Для того, чтобы было понятнее, как этой штукой пользоваться, давайте создадим на нашем виртуальном хосте файл с названием, скажем "1.php", и пропишем туда программу, которая будет проверять значение переменной, и в случае если оно положительное/не положительное, показать это на экране:
Code
<?php
//Значение переменной $c можно задать любого числа.
$c=3;
if($c>0)
echo "Значение переменной $c положительное";
else
echo "Значение переменной $c не положительное"
?>

И теперь, если Вы поменяете значение переменной, скажем, на -3, у вас на экране появится текст, предусмотренный вторым вариантом ветвления.
Едем дальше. Полная форма ветвления типа "if-else" будет выглядеть примерно так:
Code
if(выражение)
инструкия1;
elseif(выражение)
инструкия2;
else
инструкия3;

Если же инструкция будет состоять из нескольких команд, то их нужно записывать в фигурных скобках. Примерно это смотрится так:
Code
if(выражение)
{
команда1;
команда2;
elseif(выражение)
команда1;
команда2;
else
команда1;
команда2;
}

Если же Вам синтаксис такого рода по каким-то причинам не нравится (скажем, если у вас фобия квадратных скобок, или просто их не любите), то специально для вас был сделан другой синтаксис. Вот, как он выглядит:
Code
if(выражение):
команда1;
команда2;
elseif(выражение):
команда1;
команда2;
endif;

Далее. Рассмотрим условный оператор выбора "switch".
Его можно использовать вместо if-else, когда в 1 конструкции идут подряд несколько команд. Вообще, его можно использовать вообще вместо if-else, никто вам этого не запрещает, многие знатоки PHP так и делают.
Вот его синтаксис:
Code
switch(выражение)
{
case значение1:
команда1;
break;
case значение2:
команда2;
break;
case значениеn:
командаn;
break;
default:
команды по умолчанию;
}

Блок deafult обязательным не является, команды этого блока выполняются только в том случае, если ни одно из значений в блоках case не подошло.
А команда break прерывает выполнение оператора после того блока case, значение которого подходит к выражению. Поэтому, в некоторых случаях удобнее все-таки использовать switch, нежели if. Я конечно говорю о случаях, когда после найденного совпадения требуется продолжить выполнение программы.
У него есть еще и другой синтаксис:
Code
switch(выражение):
case значение1:
команда1;
break;
case значение2:
команда2;
break;
case значениеn:
командаn;
break;
default:
команды по умолчанию;
endswitch;

А теперь давайте с вами создадим такую программку, которая, по номеру дня(а номер дня у нас будет показывать переменная $day) будет показывать нам, какой сегодня день:
Code
<?php
$day=4;
//значение переменной $day, может быть любым числом
switch ($day):
case 1:
echo "Сегодня у нас понедельник";
break;
case 2:
echo "А сегодня вторник";
break;
case 3:
echo "Как это не странно, но сегодня среда";
break;
case 4:
echo "Оказалось, что сегодня четверг";
break;
case 5:
echo "А сегодня опять пятниа";
break;
case 6:
echo "Сегодня первый выходной - суббота";
break;
case 7:
echo "Ну а сегодня последний выходной - воскресенье. Завтра на работу!";
break;
default:
echo "Сколько себя помню, в неделе 7 дней было. Да и сейчас вроде...";
endswitch;
?>

А далее будет куча-куча повторений. Я конечно, говорю сейчас о циклах. Но, на сегодня уже хватит. О них читайте в дальнейших темах. :)
Сообщение отредактировал DlX - Понедельник, 29.08.2011, 22:24
 
Форум » Web дизайн » PHP » Ветвление в PHP (Не, не деревья растить будем, а программы =]])
Страница 1 из 11
Поиск:
Rambler's Top100 Рейтинг@Mail.ru Яндекс.Метрика
Полное или частичное копирование материалов только с указанием гиперссылки на www.otherside.ws

© 2010-2017 Other Side | Хостинг от uCoz