Добавить в корзинуПозвонить
Найти в Дзене
WebTechnology

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

Об условном операторе я уже писал, когда говорил о JavaScript. Разумеется, в PHP также этот оператор существует, и, разумеется, он является наиважнейшим оператором как и, пожалуй, в большинстве языков программирования. И об условном операторе в PHP я и поведаю в этой статье. Синтаксис условного оператора в PHP такой: if (условие) {
//Блок операторов
}
else {
//Блок операторов
} Как видите, синтаксис точно такой же, как и в JavaScript. И вообще этот синтаксис переходит от языка к языку, и он очень удобен, прост и понятен. Однако, если PHP - это Ваш первый язык, то поясняю. Вначале идёт ключевое слово "if", дальше в круглых скобках задаётся условие (результат которого, разумеется, либо true - истина, либо false - ложь). После условия идут фигурные скобки, в которых идёт блок операторов. И, наконец, необязательный блок else, который будет выполнен, если условие будет ложным (то есть вернёт false). Давайте разберём простейший пример на условный оператор: <?php
  $x = 4;
if ($x > 0)
 

Об условном операторе я уже писал, когда говорил о 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, но и в других языках программирования.