Конструкция If-else. Знак равенства - php-base.ru

php-base.ru
Перейти к контенту


Конструкция If-else. Знак равенства

Основы PHP > Циклы, конструкции, операторы

Конструкция If-else. Особенности применения знака равенства.

1. Конструкция "if-else"

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

Самый простой код PHP с использованием конструкции "if-else" будет выглядеть следующим образом:
<?php
$c = 15;
if($c>10) {
echo 'переменная $c больше 10';
} else {
echo 'переменная $c меньше 10';
}
?>
Браузер выведет ожидаемо - "переменная $c больше 10".
Также следует учесть, что в случае, если у вас внутри фигурных скобок находится только одно выражение, то фигурные скобки допускается не ставить. В этом случае наш код будет выглядеть следующим образом:
<?php
$c = 15;
if($c>10) echo 'переменная $c больше 10';
else echo 'переменная $c меньше 10';
?>
В некоторых случаях также допускается не указывать второй блок конструкции "else":
<?php
$c = 15;
if($c>10) echo 'переменная $c больше 10';
?>
И в этом случае не будет ошибки, браузер выведет ожидаемую фразу без ошибок. Попробуйте написать приведенные выше коды и убедиться в этом.
Во всех других случаях наличие фигурных скобок в коде обязательно.

2. Особености применения знака равенства в PHP.

Впервые столкнувшись с написанием кода PHP можно не заметить и написать знак равенства так, как мы привыкли это делать в повседневной жизни. Однако в PHP за этим знаком зарезервировано понятие "присвоить", то есть знак "=" он не подразумевает под собой понятие равенства в том смысле к которому мы с вами привыкли. Поясним это на простом примере. Для этого напишем следующий код:
<?php
$c = 5;
if ($c=5) {
echo 'переменная $c равна 5';
} else {
echo 'переменная $c не равна 5';
}
?>
Браузер выведет "переменная $c равна 5". Давайте изменим логическое выражение в части "if" на $c=1. Ожидается, что браузер выведет "переменная $c не равна 5", но в выводе мы с вами увидим, что ситуация не изменилась и на экране монитора осталась та же запись. Чтобы этого не происходило в PHP введено такое понятие как равенство по значению, которое имеет знак двойного равенства "==".
Изменим логическое выражение на $c==1 и получим "переменная $c не равна 5", что и следовало нам получить.
Но это еще не все. Используется и более строгое сравнение - равенство по значению и типу. Которое имеет знак "===".
Рассмотрим это на примере. Давайте возьмем предыдущий пример, но значение переменной возьмем в одинарные кавычки (то есть у нас получится строка со значением 5) и сравним по значению и типу, используя знак "===":
<?php
$c = '5';
if ($c===5) {
echo 'переменная $c равна 5';
} else {
echo 'переменная $c не равна 5';
}
?>
На экране монитора появится следующая запись - 'переменная $c не равна 5'. Как же так, спросите вы, а это произошло потому, что строка '5'($c = '5') не равна числу 5 ($c===5). А сравниваем мы по значению и типу.


В данной статье мы с вами познакомились с конструкцией "if-else" и рассмотрели примеры применения конструкции при написании кода. Освоили, что знак равенства в PHP отличается от привычного нам восприятия и означает "присваивание" чего-либо. Понятие равенства в PHP имеет значительно более широкое толкование и заключается в сравнении, как по значению (==), так и по типу (===).

Теперь приступим к решению различных задач для закрепления полученного материала.
1. Напишите в редакторе код PHP с числовой переменной (любое значение). Узнайте положительная она или отрицательная (больше нуля или меньше). Если отрицательная, то на экран монитора выведите фразу "переменная нам не подходит, она отрицательная". Если положительная, то ничего не выводите.
2. Для поездки в другой город используется автобус с общей вместимостью 30 пассажиров. Купили билеты и произвели посадку только 15(30) пассажиров. Напишите два кода, которые выведут на экран монитора диспетчера автовокзала информацию о наличии свободных мест в автобусе. Если все места заняты, то сообщите, что мест нет.
3. Напишите в коде строковую, цифровую переменную. Проверьте при помощи цикла "if-else" равенство значения и типа переменной заданному значению. Пусть заданное значение будет равно цифре строковой переменной. Выведите на экран результат проверки.

Copyright © php-base.ru 2019

Яндекс.Метрика
К странице комментариев
Назад к содержимому