Оператор SWITCH в PHP

Cегодня мы рассмотрим такой логический оператор, как switch в PHP. Что же это за логический оператор и как он работает. Давайте разбираться…

Криптовалюта и майнинг. Что такое майнинг? Узнать это вы можете в интересном видео по ссылке https://www.youtube.com/watch?v=SOVXa2BNoIU .

И для начала посмотрим вот на этот код:

< ?php $ number = 2; if($number == 1) echo "Один"; elseif($number == 2) echo "Два"; elseif($number == 3) echo "Три"; elseif($number == 4) echo "Четыре"; elseif($number == 5) echo "Пять"; elseif($number == 6) echo "Шесть"; elseif($number == 7) echo "Семь"; else echo "Нет такого числа"; ?>

И так, в этом коде все правильно и со стороны программирования, и со стороны синтаксиса. Кстати, многие так и пишут. Однако, есть такое понятие как комильфо. Так вот — это не комильфо. Почему? Ну вот смотрите, здесь у нас проверяется ровно одна переменная. Чем хорош оператор if — тем что можно проверять много условий, например так как у нас было с магазином — если магазин открыт, если у меня есть деньги и т.д. Вот здесь оператору if-else самое место.

В данном случае у нас идет простая проверка одной и той же переменной. Для этой цели есть еще один, более удобный условный оператор, который называется switch.

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

И так, как же записывается конструкция switch в PHP? Давайте смотреть:

< ?php $number = 2; // В переменной $a есть какое-то число и нам нужно его проверить и в зависимости от этого числа что-то сделать. // Открываем конструкцию switch и в круглых скобках записываем нашу переменную switch($number){ // В фигурных скобках у нас идет проверка этой переменной с помощью case 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 default: echo "Неизвестное число"; } ?>

Обращаю ваше внимание на оператор break в конце каждого echo. Для чего он нужен? Если вы уберете этот оператор, то посмотрите что у вас выведется в браузер. А выведется следующее: Второй день — вторник Третий день — среда Четвертый день — четверг Пятый день — пятница Шестой день — суббота Седьмой день — воскресенье Неизвестное число. Почему так происходит? Дело в том, что PHP, когда увидит что произошло совпадение, т.е. он смотрит case 1 — не совпало, case 2 — совпало и он начинает выводить все оставшиеся выражения не обращая внимания на другие case, как будто их не существует. Оператор break выбрасывает нас из switch, когда произошло совпадение и выполняет то, что произошло при совпадении — в данном случает в браузер выводится «Вторник». Так же считается, что оператор break не обязателен и если вам действительно нужно, например вывести в браузер все что идет после совпадения вместе с самим совпадением, то оператор break можно не записывать. Далее мы разберем отсутствующий break на примере, где он действительно будет не нужен.

Итак, давайте сделаем небольшую лабораторную работу, где мы напишем действительно нужный код, не вымышленный, а очень даже полезный. В конце урока, я выложу видео с этой лабораторкой, где можно будет посмотреть практически «живую» реализацию реальной задачи.

Приходит к нам заказчик и хочет кусок кода, который будет брать значение директивы POST_MAX_SIZE и выводить это значение в байтах.

По умолчанию в этой директиве значение хранится в мегабайтах и оно равно 8. Вообще эта директива отвечает за то, сколько, вернее какой объем данных можно отправить input-ом.

Наш код должен быть универсальным, т.к. он будет работать под разными хостингами, а у них эта директива разная

Прежде чем приступить к выполнению этого задания, необходимо разъяснить два вопроса:

какая функция возвращает значение любой директивы PHP?
какие допустимые значения там могут быть

Итак:

функция с помощью которой можно получить любое значение из директивы PHP называется ini_get(‘имя директивы’). Обратите внимание, что эта функция всегда возвращает строку, что бы не находилось в директивах.
там может лежать одно из четырех значений:
цифра и буква М — мегабайты (8М)
цифра и буква К — килобайты (256К)
цифра и буква G — гигобайты (1G)
просто число без букв — 123456, что означает просто байты

Вот сам код:

< ?php $max_size = ini_get('post_max_size'); // 8М $letter = $max_size{strlen($max_size) - 1}; // M $max_size = (int)$max_size; // 8 switch($letter){ case 'G': $max_size *= 1024; case 'M': $max_size *= 1024; case 'K': $max_size *= 1024; } echo 'POST_MAX_SIZE = ' .$max_size. ' байт'; ?>

Цікаве по темі посту, варто подивитись

  • Стоит ли заниматься женским фитнесом? К сожалению, большинство современных женщин гипотетически склонны к полноте, а современный образ жизни только усугубляет данную проблему. Здесь важно отметить современное питание, когда […]
  • Медицинский центре Ультрамед+ — узи в Уфе Беременность очень важный и ответственный эпизод в жизни любой женщины, поэтому очень хочется и очень важно для здоровья молодой мамы и ее ребенка, чтобы ведение беременности было с […]
  • Детский медицинский центр «Югммедтранс» Вы беспокоитесь о здоровье своего ребенка или вам необходимо пройти медосмотр для детей - в этом вам поможет медицинский цент "Югммедтранс". Персонал в медицинском центре «Югммедтранс» […]
  • Вести или не вести семейный бюджет?… Тема ведения семейного бюджета понаслышке знакома каждому, но для большинства не является актуальной. Вести, своего рода, учёт денежных средств среднестатистическому человеку мешает мысль […]
  • Ремонт и перетяжка мебели от Мастерская Радуга» Очень часто перед каждым из нас рано или поздно возникает вопрос о том, стоит ли ремонтировать старую мягкую мебель? Скажем со всей ответственностью: ремонт мягкой мебели, перетяжка […]
  • Мягкие игрушки Смешарики Одной из самых популярных видов детских игрушек в наше время являются мягкие игрушки. Такие игрушки приятно подарить ребенку, они приносят домашний уют в интерьер детских комнат, их […]
  • Как выбрать плитку для ванной комнаты Наверное, мы не откроем Америку, сказав, что уже долгие и длительные годы керамическая плитка является наиболее симпатичным и пользующимся популярностью отделочным материалом для ванной […]
  • Займ под залог недвижимости Займ под залог недвижимости – достаточно распространенная и востребованная на рынке услуга. В некоторых случаях, когда не хватает финансов для образования стартового капитала фирмы или […]
  • Плитка в ванную Вот лишь подобрать необходимый вид плитки для собственной ванной комнаты также будет довольно не элементарно. Основная неувязка состоит в том, что на рынке строй материалов плитка […]
  • Города Малайзии Малайзию отличает довольно высокий уровень урбанизации в сравнении с остальными странами Юго-восточной Азии. В городах проживает более 50 процентов населения страны. Самое лучшее […]
  • ShuangHuan Sceo: совершенству нет предела ShuangHuan Sceo – произведение китайского автопрома с труднопроизносимым названием и удивительным сходством с BMW X5. От немца взяты внушительные размеры, блеск хромированных деталей и […]
  • Как выбрать женскую сумку Прежде чем выбирать сумку, следует определиться, с какой целью Вы её покупаете. Ведь сумка, с которой Вы пойдете на пляж, не заменит Вам сумочку к деловому костюму. Прикольные […]
  • Сказочная Венеция Город влюбленных, город поэтов, город который мечтают посетить все туристы без исключения. Здесь много веков уже царит атмосфера романтики, все просто пропитано ей. Вы сможете прокатиться […]
  • Алания Берег Средиземного моря, который принадлежит Турции, ежегодно становится местом отдыха туристов со всего мира. Самым вожделенным объектом является цветущий город-крепость […]
  • Национальный парк Ялла На юго-восточном побережье Шри-Ланки, в 300 км от Коломбо находится национальный парк Ялла. Отдых на Цейлоне будет не совсем полным, если не посетить этот чудесный уголок природы. История […]
  • Бронирование стекол автомобиля Бронирование стекол авто с каждым днем пользуется все большим и большим спросом не только среди автовладельцев очень дорогих престижных иномарок, у которых есть веские причины опасаться за […]
  • Салон красоты Lidilic КОСМЕТОЛОГИЯ Придя в нашу Студию, Вы становитесь центром внимания опытных врачей-профессионалов. Мы предлагаем Вам консультацию врача-косметолога, который только для Вас составит […]
  • У каждого свой взгляд на отдых в Барселоне. У каждого свой взгляд на отдых в Барселоне. Для одних это великолепные пляжи. Другие же отдают предпочтение насыщенной экскурсионной программе. При этом каждый по-своему прав. Но ощутить […]
  • Бангкок Бангкок находится на побережье реки Чаупхрая, недалеко от Сиамского залива. Бангкок находится на равнине и усеян многочисленными реками, каналами, благодаря чему прежде город называли […]
  • Недвижимость в Испании Сегодня недвижимость в Испании – это сохранение и приумножение капитала, прекрасная возможность для организации незабываемого отдыха, беспрепятственный въезд в страны Шенгенского […]
Комментирование и размещение ссылок запрещено.

Комментарии закрыты.