<MyRusakov.ru />

Фреймворк Yii 2.0 с нуля. Пример создания сайта

Фреймворк Yii 2.0 с нуля. Пример создания сайта

Видеокурс "Фреймворк Yii 2.0 с нуля. Пример создания сайта" обучит Вас созданию профессиональных сайтов с использованием фреймворка Yii. В курсе есть 2 раздела: теоретический и практический. В теоретическом разделе будут разобраны возможности фреймворка Yii с примерами их использования, а в практической части будет создан сайт Blog.MyRusakov.ru с помощью полученных знаний из теоретического раздела.

Так же почти ко всем урокам идут упражнения для закрепления материала из урока на практике.

После прохождения курса Вы без труда сможете создавать любые сайты с использованием фреймворка Yii, причём делать это будете быстро и качественно.

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

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

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

Об условном операторе я уже писал, когда говорил о JavaScript. Разумеется, в PHP также этот оператор существует, и, разумеется, он является наиважнейшим оператором как и, пожалуй, в большинстве языков программирования. И об условном операторе в PHP я и поведаю в этой статье.

Синтаксис условного оператора в PHP такой:

if (условие) {
//Блок операторов
}
else {
//Блок операторов
}

Как видите, синтаксис точно такой же, как и в JavaScript. И вообще этот синтаксис переходит от языка к языку, и он очень удобен, прост и понятен. Однако, если PHP - это Ваш первый язык, то поясняю. Вначале идёт ключевое слово "if", дальше в круглых скобках задаётся условие (результат которого, разумеется, либо true - истина, либо false - ложь). После условия идут фигурные скобки, в которых идёт блок операторов. И, наконец, необязательный блок else, который будет выполнен, если условие будет ложным (то есть вернёт false). Давайте разберём простейший пример на условный оператор:

<?php
  $x = 4;
  if ($x > 0)
    echo "Число X положительное";
  else
    if ($x == 0)
      echo "Число X равно нулю";
    else
      echo "Число X отрицательное";
?>

Давайте разберём эту простую задачу. Вначале скрипта объявляется переменная x и присваивается значение "4". Затем идёт условие, где мы "если переменная x больше нуля" выводим сообщение, иначе (то есть если переменная x НЕ больше нуля) если переменная x равно 0, то выводим сообщение, что "Число X равно нулю", иначе выводим, что число отрицательное. В общем, я постарался максимально подробно изложить алгоритм этой задачи. Надеюсь, Вы поняли принцип. Возможно, что некоторые из Вас спросят: "А куда делись фигурные скобки?" В данном случае они необязательны, потому что мы используем в каждом блоке всего один оператор (либо один оператор echo, либо один оператор IF). А вот если бы мы использовали два и более оператора, то нам пришлось бы уже ставить фигурные скобки.

И давайте ещё один пример рассмотрим, а, заодно, я познакомлю Вас с очень важной функцией в PHP - isset(), которая проверяет существование переменной и возвращает true, если переменная существует, либо false, если переменная не существует.

<?php
  $v = "some";
  if (isset($v))
    echo "Переменная v существует и её значение - $v";
  else
    echo "Переменной v не существует.";
  if (isset($abcdef)) {
    echo "Такая переменная существует!";
    echo "Странно... Ведь мы её не объявляли";
  }
  else
    echo "Данной переменной не существует...";
?>

В этом примере мы вновь объявили переменную со строковым значением "some". Дальше мы проверяем, если такая переменная существует (функция isset()), то сообщаем об этом, а если не существует (то есть функция isset() вернула false), то выводим другое сообщение. Дальше мы пишем ещё один условный оператор, в котором проверяем существование переменной abcdef. Также обратите внимание, что я поставил фигурные скобки, так как в блоке уже два оператора (два echo). Также обратите внимание, что если Вы используете двойные кавычки ("), то такие строки "значение - $v" превращаются в "значение - some", то есть подставляется значение переменной. А если Вы используете одинарные кавычки ('), то значение переменной не подставляется.

Также бывают сложные условия: с логическим И (&&) и/или логическим ИЛИ (||):

<?php
  $ab = 17;
  $cd = 19;
  $bool = true;
  if (($ab - $cd < 0) && ($bool))
    echo "Разница переменных меньше нуля и переменная bool = true";
?>

Разумеется, могут быть очень сложные условия с кучей логических И и логических ИЛИ. В общем, думаю, этот пример не нуждается в пояснении. Главное надо понять, что оператор с логическим И вернёт в итоге true только тогда, когда все условия истинны, а если используется логическое ИЛИ, то чтобы вернулось true, необходимо выполнение хотя бы одного из условий. Но и тут важно понимать, что бывают, например, такие условия:

if ((($a > 0) && ($b < 0)) || ($c == 0))

То есть здесь условие вернёт true, если (($a > 0) И ($b <0)) ИЛИ ($c == 0). В общем, надо научиться читать условия, и обращайте внимание на расстановку скобок, так как именно они задают приоритеты выполнения операций. Советую Вам с последним условием поработать. Напишите простой скрипт, присвойте трём переменным значения и посмотрите, что возвращает данное условие. Потом меняйте значениях переменных и следите за изменениями. Так Вы быстрее получите навык чтения сложных условий, а они, поверьте мне, используются очень часто не только в PHP, но и в других языках программирования.

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

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

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (21):

shwarz shwarz 20.02.2011 02:44:20

Михайл, могу ли я вместо && и || писать более привычное мне "and" и "or" в условии и будет это одно и тоже?

Ответить

Admin Admin 20.02.2011 02:48:39

Большой разницы нет. Единственное, что у "&&" приоритет выше, поэтому сначала будет выполняться "&&", а потом только "and". Та же история и с "||" и "or".

Ответить

sync.o sync.o 17.07.2011 10:46:23

А есть ли какая-нибудь разница между if (isset($v)) и просто if ($v)?

Ответить

Admin Admin 17.07.2011 14:22:03

Да, разница огромная. isset() проверяет существует ли такая переменная. Если, допустим, она имеет значение false, то isset() вернёт true и условие пройдёт. А если if($v) и переменная v=false, то тогда условие не пройдёт.

Ответить

Denis Denis 02.11.2011 23:03:34

Здравствуйте. В кодах 3 и 4 с верху, как мне кажется и моему денверу, есть ошибка.

Ответить

Admin Admin 02.11.2011 23:12:15

Я нашёл только одну ошибку: if (($ab - $cd < 0) && (bool)) Подправил. Других ошибок там нет. Если Вы про последний код, то там нет цели "конечный вариант", а показывается только пример if. Спасибо, что сообщили!

Ответить

Denis Denis 02.11.2011 23:24:09

Это вам спасибо!))

Ответить

Daves Daves 26.02.2012 21:48:04

А почему например тут: if ($x == 0) стоит 2 знака = ???

Ответить

Admin Admin 26.02.2012 21:50:15

Потому что это знак сравнения, а не присваивания.

Ответить

artkhvz artkhvz 25.03.2012 15:54:07

А не проще условия if ((($a > 0) && ($b < 0)) || ($c == 0)) написать вот так: if ($a > 0 && $b < 0 || $c == 0) результат вывода будет такой же...

Ответить

Admin Admin 25.03.2012 15:58:07

Не проще, поскольку тогда создаётся возможность для ошибки из-за приоритетов операций. Поэтому любой программист Вам скажет, что лучше на приоритеты не надеяться и перестраховаться, поставив скобки. Если Вам проще писать так, то, пожалуйста, можно и без лишних скобок писать. А ошибки будете по ходу исправлять.

Ответить

artkhvz artkhvz 25.03.2012 16:29:18

понятно.. просто мне это не объяснили...

Ответить

ppk-center ppk-center 01.12.2012 18:53:36

Спасибо я сделал на сайте так <img src="avatars/avatar <?php if ($_COOKIE["avatar"]=="") { echo "default"; } else { echo $_COOKIE["avatar"]; } ?> .jpg"> и всё работает нормально!

Ответить

Hoso555 Hoso555 25.12.2012 00:00:45

Здесь мне помогли знания о языке Pascal.Кто знает Pascal, может легко учить этот.

Ответить

Promus Promus 26.01.2013 16:48:29

<?php $x = 4; if ($x > 0) echo "Число X положительное"; else if ($x == 0) echo "Число X равно нулю"; else echo "Число X отрицательное"; ?> Вот здесь ошибка у Вас. Скобок нету после условия.

Ответить

Admin Admin 26.01.2013 20:50:46

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

Ответить

PoZaMus PoZaMus 04.06.2013 21:52:25

а разница какая <?php $ab = 17; $cd = 19; $bool = true; if (($ab - $cd < 0) && ($bool)) echo "Разница переменных меньше нуля и переменная bool = true"; ?> и без && ($bool) тож самое получается ?

Ответить

PoZaMus PoZaMus 04.06.2013 22:03:48

короч понял все спасиб за сайт !

Ответить

Admin Admin 04.06.2013 22:04:24

Да, получается, однако, это пример использования && и булевской переменной в if.

Ответить

JokerX JokerX 13.08.2013 17:12:08

((($a > 0) && ($b < 0)) || ($c == 0)) ((($a > 0)-Зачем вы здесь три скобки поставили вполне двух хватает... if(($x<$y) &&($r<$x) ||($x==0)) я вот так сделал...это не хуже?

Ответить

Admin Admin 14.08.2013 17:35:33

Дело не в том, что хуже, так менее наглядно.

Ответить

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.