(Переменная A имеет значение 10, а B - 20)
Оператор | Описание | Пример |
---|---|---|
+ | сложение | A + B , результат: 30 |
- | вычитание | A - B , результат: 10 |
* | умножение | A * B , результат: 200 |
/ | деление | B / A , результат: 2 |
% | деление по модулю (остаток) | B % A , результат: 0 |
++ | инкремент (увеличение операнда значения на 1) | A++ , результат: 11 |
-- | декремент (уменьшение на 1) | A-- , результат: 9 |
(Переменная A имеет значение 10, а B - 20)
Оператор | Описание | Пример |
---|---|---|
== | true, если значения одинаковы | (A == B) , результат: false |
=== | true, если и значения и типы операндов одинаковы | |
!= | false , если значения одинаковы. | (A != B) , результат: true. |
> | true, если первое значение больше второго | (A > B) , результат: false |
< | true, если первое значение мньше второго | (A < B) , результат: true. |
>= | true, если первое значение больше или равно второму | (A >= B) , результат: false |
<= | true, если первое значение меньше или равно второму | (A <= B) , результат: true. |
Для понимания логических операторов нужно иметь представление о логических (boolean) переменных и выражениях. Логическая переменная может иметь только 2 значения: истина (1, true ) или ложь (0, false). Логические выражения составляются из логических операторов и лоических переменных.
Логические операторы имеют дело с логическими выражениями. Логические выражения (boolean expressions) могут принимать значения true, истина (логическая 1) или false, ложь (логический 0).
В таблице ниже - переменная A имеет значение true , а B - false.
Оператор | Описание | Пример |
---|---|---|
and | Логическое И (and, или логическое умножение). Значение true , если оба операнда true | (A and B) , результат: false. |
or | Логическое ИЛИ (or, или логическое сложение). Значение true , если хотя бы один из операндов - true | (A or B) , результат: true. |
xor | Исключающее ИЛИ. Принимает значение true, если один из операндов true, но - не оба одновременно | (A or B) , результат: true. |
&& | Логическое И (and, или логическое умножение). Значение true , если оба операнда true | (A && B) , результат: true. |
|| | Логическое ИЛИ (or, или логическое сложение). Значение true , если хотя бы один из операндов - true | (A || B) , результат: true. |
! | Логическое НЕ (not или логическое отрицание). Значение true, если оперант - false и значение false, если операнд - true | !(A && B) , результат: false. |
Обычно логические операторы, логические выражения описываются посредством таблицы истинности (truth table). В такой таблице приводятся значения выражения при всех возможных вариантах, сочитаниях значений аргументов.
Примеры таблиц истинности (где T - truth, F - false):
Логическое умножение - AND
A | B | A & B |
T | T | T |
T | F | F |
F | T | F |
F | F | F |
Логическое сложение - OR
A | B | A | B |
T | T | T |
T | F | T |
F | T | T |
F | F | F |
(Переменная A имеет значение 10, а B - 20)
Оператор | Описание | Пример |
---|---|---|
= | Присваивание: значение правого операнда присваивается левому операнду. | C = A + B присваивает переменной С значение выражения A + B |
+= | Сложение с присваиванием. Складывает значения левого и правого операнда, затем результат присваивается левому. | 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 |
Условные операторы оценивают (evaluate) значение некоторого логического выражения, результат: истина (true) или ложь (false). В зависимости от этого выполняется та или иная ветвь программы.
Оператор | Описание | Синтаксис |
---|---|---|
? : | Условный оператор | ЛогическоеВыражение ? Выполнить в случае true : Выполнить в случае false |
Приоритеты операторов определяют для интерпретатора PHP ту последовательность, в которой их необходимо выполнять в сложных выражениях.
Например в выражении x = 7 + 3 * 2; Сперва переменной x присваивается значение 13, так как оператор * имеет больший приоритет, чем +, поэтому сначала выполняется умножение
Далее - операторы упорядочены по приоритетам, причём операторы с большим приоритетом расположены вверху таблицы. Внутри выражения сперва оцениваются результаты операторов с высшим приоритетом
Оператор | Последовательнось выполнения |
---|---|
! ++ -- | Справа налево |
* / % | Слева направо |
+ - | Слева направо |
< <= > >= | Слева направо |
== != | Слева направо |
&& | Слева направо |
|| | Слева направо |
?: | Справа налево |
= += -= *= /= %= | Справа налево |
*
По материалам сайтов:
www.w3schools.com
www.tutorialspoint.com