PHP - Типы операторов
What is Operator?Простой ответ можно дать, используя выражение 4 + 5 равно 9 . Здесь 4 и 5 называются операндами, а + называется оператором. Язык PHP поддерживает следующие типы операторов.
- Арифметические операторы
- Операторы сравнения
- Логические (или реляционные) операторы
- Операторы присваивания
- Условные (или тернарные) операторы
Давайте посмотрим на всех операторов один за другим.
Арифметические операторы
Язык PHP поддерживает следующие арифметические операторы:
Предположим, что переменная A содержит 10, а переменная B содержит 20, тогда -
Показать примеры
Оператор | Описание | пример |
---|---|---|
+ | Добавляет два операнда | A + B даст 30 |
- | Вычитает второй операнд из первого | A - B даст -10 |
* | Умножьте оба операнда | A * B даст 200 |
/ | Разделите числитель на де-числитель | Б / А даст 2 |
% | Оператор модуля и остаток после целочисленного деления | B% A даст 0 |
++ | Оператор увеличения, увеличивает целое значение на единицу | A ++ даст 11 |
- | Оператор декремента, уменьшает целочисленное значение на единицу | A - даст 9 |
Операторы сравнения
В языке PHP поддерживаются следующие операторы сравнения
Предположим, что переменная A содержит 10, а переменная B содержит 20, тогда -
Показать примеры
Оператор | Описание | пример |
---|---|---|
== | Проверяет, равны ли значения двух операндов или нет, если да, то условие становится истинным. | (A == B) неверно. |
знак равно | Проверяет, равны ли значения двух операндов или нет, если значения не равны, условие становится истинным. | (A! = B) верно. |
> | Проверяет, больше ли значение левого операнда, чем значение правого операнда, если да, то условие становится истинным. | (A> B) неверно. |
< | Проверяет, меньше ли значение левого операнда, чем значение правого операнда, если да, то условие становится истинным. | (A <B) верно. |
> = | Проверяет, больше ли значение левого операнда или равно значению правого операнда, если да, то условие становится истинным. | (A> = B) неверно. |
<= | Проверяет, меньше ли значение левого операнда или равно значению правого операнда, если да, то условие становится истинным. | (A <= B) верно. |
Логические операторы
В языке PHP поддерживаются следующие логические операторы
Предположим, что переменная A содержит 10, а переменная B содержит 20, тогда -
Показать примеры
Оператор | Описание | пример |
---|---|---|
и | Вызывается логическим оператором И. Если оба операнда верны, тогда условие становится истинным. | (A и B) верно. |
или же | Вызывается логическим оператором ИЛИ. Если любой из двух операндов не равен нулю, условие становится истинным. | (A или B) верно. |
&& | Вызывается логическим оператором И. Если оба операнда не равны нулю, условие становится истинным. | (A && B) верно. |
|| | Вызывается логическим оператором ИЛИ. Если любой из двух операндов не равен нулю, условие становится истинным. | (A || B) верно. |
! | Вызывается оператором логического НЕ. Используется для изменения логического состояния операнда на обратное. Если условие истинно, то оператор логического НЕ сделает ложным. | ! (A && B) ложно. |
Операторы присваивания
Язык PHP поддерживает следующие операторы присваивания:
Показать примеры
Оператор | Описание | пример |
---|---|---|
знак равно | Простой оператор присваивания, присваивает значения из правых операндов левому операнду | C = A + B присвоит значение A + B в C |
+ = | Добавить оператор присваивания И, он добавляет правый операнд к левому операнду и присваивает результат левому операнду | C + = A эквивалентно C = C + A |
знак равно | Оператор вычитания И присваивания, он вычитает правый операнд из левого операнда и присваивает результат левому операнду | C - = A эквивалентно C = C - A |
знак равно | Оператор умножения И присваивания, он умножает правый операнд на левый операнд и присваивает результат левому операнду | C * = A эквивалентно C = C * A |
знак равно | Оператор деления И присваивания, он делит левый операнд на правый операнд и присваивает результат левому операнду | C / = A эквивалентно C = C / A |
знак равно | Оператор модуля И присваивания, принимает модуль с использованием двух операндов и присваивает результат левому операнду | C% = A эквивалентно C = C% A |
Условный оператор
Есть еще один оператор, называемый условным оператором. Сначала выполняется оценка выражения для истинного или ложного значения, а затем выполняется одно из двух заданных операторов в зависимости от результата оценки. Условный оператор имеет этот синтаксис -
Показать примеры
Оператор | Описание | пример |
---|---|---|
? : | Условное выражение | Если условие верно? Затем значение X: в противном случае значение Y |
Категории операторов
Все операторы, которые мы обсудили выше, можно разделить на следующие категории:
Операторы унарного префикса, которые предшествуют одному операнду.
Бинарные операторы, которые принимают два операнда и выполняют множество арифметических и логических операций.
Условный оператор (тернарный оператор), который принимает три операнда и оценивает либо второе, либо третье выражение, в зависимости от оценки первого выражения.
Операторы присваивания, которые присваивают значение переменной.
Приоритет операторов PHP
Приоритет оператора определяет группировку терминов в выражении. Это влияет на то, как оценивается выражение. Некоторые операторы имеют более высокий приоритет, чем другие; например, оператор умножения имеет более высокий приоритет, чем оператор сложения -
Например, x = 7 + 3 * 2; Здесь x присваивается 13, а не 20, потому что оператор * имеет более высокий приоритет, чем +, поэтому он сначала умножается на 3 * 2, а затем складывается в 7.
Здесь операторы с наивысшим приоритетом отображаются вверху таблицы, а операторы с самым низким - внизу. Внутри выражения в первую очередь будут оцениваться операторы с более высоким приоритетом.
Категория | Оператор | Ассоциативность |
---|---|---|
Унарный | ! ++ - | Справа налево |
Мультипликативный | * /% | Слева направо |
Добавка | + - | Слева направо |
Реляционный | <<=>> = | Слева направо |
Равенство | ==! = | Слева направо |
Логическое И | && | Слева направо |
Логическое ИЛИ | || | Слева направо |
Условный | ?: | Справа налево |
Присвоение | = + = - = * = / =% = | Справа налево |