abuzov.com » PHP » Самоучитель PHP для начинающих » 4. Операторы в PHP
4. Операторы в PHP

Операторы это важнейшая базовая тема.

Фактически это символы, которые применяются для манипулирования значениями переменных.

Ранее мы уже сталкивали с операторами присваивания = и конкатенации строк ..

Операции производятся над операндами, то есть теми сущностями которые находятся справа и слева от оператора.

Арифметические операторы

Арифметические операции всем известны еще со школы.

Оператор Название операции Пример
+ Сложение $a + $b
Вычитание $a — $b
* Умножение $a * $b
/ Деление $a / $b
% Деление по модулю $a % $b

Результат любой арифметической операции может быть присвоен переменной, например:

<?php
$a = 10;
$b = 3;
$result = $a + $b;
echo $result;
?>

Результатом будет число: 13.

Строковые операторы

Новичкам нужно знать одну строковую операцию, которую мы с вами уже знаем — операцию конкатенации .. Ее можно использовать как для объединения строк, так и для сохранения результата (подобно сложению двух чисел), например:

<?php
$a = "Атозапчасти ";
$b = "от магазина exist.ru";
$result = $a.$b;
echo $result;
?>

Результатом будет строка: Автозапчасти от магазина exist.ru.

Операторы присваивания

Мы уже сталкивались с базовым оператором присваивания равно (=).

В случае, когда:
$a = 10;
Правильно будет говорить: «переменная a устанавливается в значение 10». Говорить как мы привыкли «a равно десяти» не совсем правильно, так как далее по сценарию значение переменной может несколько раз изменяться.

Комбинированные операторы присваивания

В дополнение к простым операм присваивания существует набор комбинированных операторов присваивания. По сути это оператор присваивания = с арифметическим оператором.

 

Оператор Использование Равная операция
+= $a += $b $a = $a + $b
-= $a -= $b $a = $a — $b
*= $a *= $b $a = $a * $b
/= $a /= $b $a = $a / $b
%= $a %= $b $a = $a % $b
.= $a .= $b $a = $a . $b

Например, код:
<?php
$a = 10;
$a += 5;
echo $a;
?>;

будет равен коду:
<?php
$a = 10;
$a = $a + 5;
echo $a;
?>;

И результат будет одинаков: 15.

Операторы инкремента и декремента

Оператор инкремента ++ увеличивает значение переменной на единицу, а оператор декремента -- уменьшает значение на единицу.
Пример:
<?php
$a = 3;
echo ++$a;
?>;

Результат будет число 4.

Оператор ссылки

Оператор ссылки & (амперсанд), может применяться в сочетании с операцией присваивания.

Когда одна переменная присваивается другой, создается и сохраняется в памяти ее копия.

Например:
<?php
$a = 3;
$b = $a;
$a = 7;
echo $b;
?>

При выполнении данного коды мы получим значение 3.
Если мы изменим код на:
<?php
$a = 3;
$b = &$a;
$a = 7;
echo $b;
?>

мы получим значение 7.

Если мы используем оператор ссылки &, то PHP не хранит в памяти копию переменной a.

Операторы равенства и сравнения

Оператор равенства == (два знака равно) проверяет идентичность двух значений. После выполнения операции может быть два логических результата: true и false. Если сравниваемые операнды равны получаем true и наоборот.

Операцию равенства == легко перепутать с операцией присваивания =. Не путайте их.

<?php
$a = 3; // присваиваем значение
$b = 4;// присваиваем значение
$a == $b; // сравниваем значения, 3 не равно 4, результат - false
?>

Операции сравнения PHP

 

Оператор Название операции Использование
== Равно $a == $b
=== Идентично $a === $b
!= Не равно $a != $b
!== Не идентично $a !== $b
<> Не равно $a <>$b
< Меньше $a < $b
> Больше $a > $b
<= Меньше или равно $a <= $b
>= Больше или равно $a >= $b

В чем отличие равно == от === идентично, и зачем оно надо? Поясняю.
0=='0' // вернет true, так как PHP будет считать оба нуля числами.
А вот:
0==='0' // вернет false, так как PHP будет считать второй ноль строкой (в одинарных кавычках).

Spaceship

Оператор сравнения, который появился в PHP7: spaceship.

Логика у этого оператора следующая:
$a <=> $b
Если $a > $b, вернёт 1
Если $a == $b, вернёт 0
Если $a < $b, вернёт -1

Логические операторы

Оператор Название операции Использование Результат
! Не !$a Возвращает true, если значение $a равно false
&& И $a && $b Возвращает true, если $a и $b равны true иначе возвращаетfalse
|| Или $a || $b Возвращает true, если любая переменная $a и/или $b равны true иначе возвращаетfalse
and И $a and $b Аналогична &&
or Или $a or $b Аналогична ||
xor Исключающее или $a xor $b Возвращает true, если либо $a, либо $b имеют значение true и false, и возвращает значение false в случае если обе переменные равны true или false.

Приоритет операций

Операции имеют разный приоритет. Тут все как в математике из школьного курса. Ничего нового. Для указания явного приоритета используем скобки.

На этом все. Если у вас появились вопросы по поводу операторов в PHP, обязательно задавайте их в комменатриях!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вы можете испольовать HTML теги и их атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">