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.
Здесь операторы с наивысшим приоритетом отображаются вверху таблицы, а операторы с самым низким - внизу. Внутри выражения в первую очередь будут оцениваться операторы с более высоким приоритетом.
| Категория | Оператор | Ассоциативность |
|---|---|---|
| Унарный | ! ++ - | Справа налево |
| Мультипликативный | * /% | Слева направо |
| Добавка | + - | Слева направо |
| Реляционный | <<=>> = | Слева направо |
| Равенство | ==! = | Слева направо |
| Логическое И | && | Слева направо |
| Логическое ИЛИ | || | Слева направо |
| Условный | ?: | Справа налево |
| Присвоение | = + = - = * = / =% = | Справа налево |