В PHP существует несколько операторов, которые применяются для создания различных сценариев.
Рассмотрим некоторые из основных операторов, которые могут пригодиться вам при написании кода.
Арифметические операторы
Арифметические операторы позволяют создавать выражения с операндами для их сложения, вычитания, умножения, деления, возведение в степень.
Оператор | Действие |
---|---|
+ | Сложение |
- | Вычитание |
* | Умножение |
/ | Деление |
% | Деление по модулю |
** | Возведение в степень |
Операторы присваивания
Оператор присваивания может быть объединен с любым арифметическим оператором, позволяя выполнить вычисление, а затем присвоить результат.
Оператор | Эквивалент выражения |
---|---|
a += b; | a = (a + b) |
a -= b; | a = (a - b) |
a *= b; | a = (a * b) |
a /= b; | a = (a / b) |
Операторы сравнения
Оператор сравнения позволяет создавать выражения с операндами их равенства, неравенства, идентичности или его отсутствия. Также определять, какой из них больше, меньше, больше или равен, меньше или равен, меньше равен или больше.
Оператор | Тип сравнения |
---|---|
== | Равно |
=== | Идентично |
!= | Не равно |
!== | Не идентично |
> | Больше |
< | Меньше |
>= | Больше или равно |
<= | Меньше или равно |
<=> | Меньше равно или больше |
Логические операторы
Логические операторы позволяют создавать выражения с двумя сравниваемыми операндами и возвращают значение TRUE или FALSE.
Оператор ! (Логическое "НЕ") возвращает обратное логическое значение единственного операнда.
Оператор | Действие |
---|---|
and или && | Логическое "И" |
or или || | Логическое "ИЛИ" |
xor | Исключающее "ИЛИ" |
! | Логическое "НЕ" |
Побитовые операторы
Побитовые операторы позволяют вычислять и управлять отдельными битами внутри целочисленного значения.
Оператор | Название | Действие с двоичным числом |
---|---|---|
| | ИЛИ | Возвращает 1 в каждом бите, если любой из двух сравниваемых битов равен 1. Пример: 1010 | 0101 = 1111 |
& | И | Возвращает 1 в каждом бите, если оба из двух сравниваемых битов равны 1. Пример: 1010 && 1100 = 1000 |
~ | Отрицание | Возвращает 1 в каждом бите, если ни один из сравниваемых битов не равен 1. Пример: 1010 - 0011 = 0100 |
^ | Исключающее ИЛИ | Возвращает 1 в каждом бите, если только один из двух сравниваемых битов равен 1. Пример: 1010 ^ 0110 = 1110 |
<< | Сдвиг влево | Перемещает каждый бит, равный 1, на заданное число битов влево. Пример: 0010 << 2 = 1000 |
>> | Сдвиг вправо | Перемещает каждый бит, равный 1, на заданное число битов вправо. Пример: 1000 >> 2 = 0010 |
Операторы инкремента и декремента
Операторы инкремента и декремента при указании перед переменной изменяют заданное число на единицу и возвращают полученное значение.
Оператор | Действие |
---|---|
++ | Оператор инкремента. Увеличивает значение на единицу |
- | Оператор декремента. Уменьшает значение на единицу |
Условные операторы
Условный оператор ?:, также известный, как "тернарный", принимает три значения.
Приоритет операторов
Приоритет операторов определяет, каким образом выражения группируются для вычисления.
В таблице представлены наиболее распространённые операторы, расположенные по убыванию их приоритетов. Операторы, находящиеся в одной строке, обладают одинаковым приоритетом, и порядок их выполнения определяется в соответствии с их ассоциативностью.
Оператор | Ассоциативность |
---|---|
** | Правая |
++-~ | Правая |
! | Правая |
* /% | Левая |
+ -. | Левая |
<< >> | Левая |
< <= > >= | Нет |
==!= ===!== <> <=> | Нет |
& | Левая |
^ | Левая |
| | Левая |
&& | Левая |
|| | Левая |
?? | Правая |
?: | Левая |
= += -= *= **= /= .=%= &= |= ^= <<= >>= | Правая |
and | Левая |
xor | Левая |
or | Левая |