Просто о сложном или изучаем PHP7! Часть 8. Условный оператор switch
Здравствуйте, уважаемые читатели сайта remontcompa.ru! Меня зовут Роман Нахват и я представляю вашему вниманию восьмую часть из цикла статей по языку программирования PHP. В седьмой части мы с вами познакомились с условным оператор if, а также с логическими операторами && («и») и || («или»). В данной части на конкретном примере рассмотрим ещё один условный оператор под названием switch. Конструкция условного оператора switch такова, что в качестве выражения после слова switch в круглых скобках записывается какая-либо переменная либо выражение. Далее в фигурных скобках после слова case указываются возможные значения переменной или выражения, указанного в круглых скобках после слова switch. Если значение переменной (или выражения) совпадает с каким-либо значением, указанным после слова case, то выполняется код, прописанный после знака :. Для того, чтобы оператор switch завершал свою работу после обнаружения первого совпадения значений, каждый код важно завершать ключевым словом break.
![]()
Просто о сложном или изучаем PHP7! Часть 8. Условный оператор switch
Создадим документ со следующим содержимым и сохраним его под именем forma и расширением .php на флеш накопителе в папке CSS

Файл forma.php

С помощью тегов <h3>…</h3> добавим в документ заголовок «Какой из процессоров не поддерживает технологию Hyper-Threading»

После заголовка «Какой из процессоров не поддерживает технологию Hyper-Threading» пропишем теги <form>…</form>

Добавим в создаваемую форму на странице forma.php некоторые элементы, используя тег <input>. В нашем случае форма будет содержать несколько переключателей (для этого в качестве значения для атрибута type тега указываем значение radio), атрибутам name и value указываем значения processor и i7-7820HQ соответственно (значения даных атрибутов понадобятся для работы с оператором switch). Прописываем следующую строку: <p><input type=»radio» name=»processor» value= i7-7820HQ»>Процессор i7-7820HQ</p>

Таким же образом добавим в форму ещё несколько переключателей, прописав им разные значения для атрибута value

Добавим в форму на странице forma.php кнопку отправки данных с формы, дописав строку <input type=»submit» value= «Ответить»>
![]()
Подключим к странице forma.php файл стилей forma.css <link rel=»stylesheet» type=»text/css» href=»forma.css»>, используя который зададим цвет тексту в создаваемой форме

В теге <form> пропишем атрибуты action и method и зададим им значения switch.php и POST соответственно. Атрибут action используется для назначения php сценария, который будет обрабатывать форму на веб странице. В нашем случае форму на веб странице form.php будет обрабатывать сценарий в файле switch.php. Атрибут method определяет, каким образом данные из формы будут передаваться в php сценарий (в нашем случае в файл switch.php). Существует два метода передачи данных из веб формы в php сценарий, POST (который будет использован в данной статье), и GET. Подробнее каждый метод будет рассмотрен в следующих частях статей по языку PHPДобавить в заметки чтобы посмотреть позже?
![]()
Изменим цвет текста в заголовке «Какой из процессоров не поддерживает технологию Hyper-Threading» и в форме на веб-странице form.php на синий, используя CSS селектор класса. Пропишем название класса color, как показано ниже
![]()
В файле стилей forma.css после селектора класса .color пропишем следующие CSS свойства: color: blue и font-weight: bold

Закачаем файлы forma.php и forma.css на (в нашем случае это 000webhost)
![]()
Жмём Открыть


Файлы forma.php и forma.css, закачанные на
![]()
Переименуем файл forma.php в index.php

Получим следующее
![]()
В итоге, если перейти на сайт по адресу https://gnomonic-lender.000webhostapp.com/, увидим созданную веб форму

Создадим файл switch.php, в основе которого будет лежать условный оператор switch
![]()
В языке PHP существует специальный глобальный массив $_POST (данный массив мы будем рассматривать более подробно в следующих частях по языку PHP). В данном массиве хранятся данные, полученные из формы на веб странице и переданные с помощью метода POST. Массив $_POST содержит элементы с теми же именами, что и каждый из элементов формы на веб странице
Так как каждому элементу из формы на веб странице назначено одинаковое имя (name=»processor»), массив $_POST будет содержать элемент с именем processor
![]()
В файле switch.php создадим переменную $proc и назначим ей значение $_POST [‘processor’]
![]()
Укажем переменную $proc в качестве выражения для условного оператора switch
![]()
Каждый элемент формы на веб странице forma.php имеет свое значение, указанное после атрибута value
![]()
Пропишем значения, указанные в каждом элементе формы на веб странице forma.php после атрибута value в условном операторе switch, как показано ниже
![]()
Напротив каждого значения через знак : пропишем код, который будет выполняться в случае, если значение переменной $proc совпадет со значением, указанным после слова case. Например, если значением переменной $proc будет i7-7820HQ, то в окне веб-браузера будет выведен текст «Ваш ответ неправильный, так как выбранный вами процессор поддерживает технологию Hyper-Threading»
![]()
Подключим к странице switch.php файл стилей forma.css, дописав строку echo «<link rel=’stylesheet’ type=’text/css’ href=’forma.css’>»;
![]()
Внутри каждого тега <h3> пропишем идентификаторы otv1 и otv2, как показано ниже
![]()
Используя CSS селекторы идентификаторов #otv1 и #otv2, зададим тексту заголовков свойства, как показано ниже

Удалим с старый файл стилей forma.css и загрузим измененный, также на загрузим файл switch.php
![]()
Выделяем файлы forma.css и switch.php и жмём Открыть

Upload

Получаем следующее
![]()
Перейдем на сайт по адресу https://gnomonic-lender.000webhostapp.com/ и в форме поставим переключатель на варианте ответа Процессор i7-7820HQ и нажмём Ответить
![]()
После того, как данные из формы на веб странице были переданы для обработки файлу switch.php, в окне веб браузера мы увидим сообщение «Ваш ответ неправильный, так как выбранный вами процессор поддерживает технологию Hyper-Threading», выделенное красным цветом

Выберем другой вариант ответа, например Процессор i7-9700K и нажмём кнопку Ответить

В окне веб браузера увидим сообщение «Ваш ответ неправильный, так как выбранный вами процессор поддерживает технологию Hyper-Threading», выделенное зелёным цветом


