DlX |
Дата: Понедельник, 29.08.2011, 09:42 | Сообщение # 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
|
|
|
|