Арифметические операторы
php, js
js (из примера убрать $)
выполнить арифметическое действие и сразу присвоить
Логические операторы
популярные
php, js
js (из примера убрать $)
непопулярные php
php
js
Операторы сравнения
Операторы инкремента и декремента
php, js
js (из примера убрать $)
php
js
Тернарный оператор
php
js
Приоритеты выполнения операторов
Побитовые операторы
редко используются
php, js
js (из примера убрать $)
Пример | Название | Результат |
---|---|---|
-$a | Отрицание | Смена знака $a |
$a + $b | Сложение | Сумма $a и $b |
$a - $b | Вычитание | Разность $a и $b |
$a * $b | Умножение | Произведение $a и $b |
$a / $b | Деление | Частное от деления $a на $b |
$a % $b | Деление по модулю | Целочисленный остаток от деления $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 | Модуль |
$a **= $b | $a = $a ** $b | Возведение в степень |
Логические операторы
популярные
php, js
js (из примера убрать $)
!$a | Отрицание | TRUE - если $a не TRUE. |
$a && $b | Логическое 'и' | TRUE - если и $a, и $b TRUE. |
$a || $b | Логическое 'или' | TRUE - если или $a, или $b TRUE. |
$a and $b | Логическое 'и' | TRUE - если и $a, и $b TRUE. |
$a or $b | Логическое 'или' | TRUE - если или $a, или $b TRUE. |
$a xor $b | Исключающее 'или' | TRUE - если $a, или $b TRUE, но не оба |
php
$a = 10; $b = 5; echo '$a='.$a,' $b='.$b."<br>"; echo '-$a = '.(-$a)." - Отрицание<br>"; echo '$a + $b = '.($a + $b)." - Сложение<br>"; echo '$a - $b = '.($a - $b)." - Вычитание<br>"; echo '$a * $b = '.($a * $b)." - Умножение<br>"; echo '$a / $b = '.($a / $b)." - Деление<br>"; echo '$a % $b = '.($a % $b )." - Деление по модулю - Целочисленный остаток от деления $a на $b<br>"; $a = true; $b = false; if(!$a){ //НЕ выполнится echo '!$a<br>'; } elseif(!$b){ //выполнится echo '!$b<br>'; } if($a && $b){ //не выполнится echo '$a && $b<br>'; } elseif($a && !$b){ //выполнится echo '$a && !$b<br>'; } if($a || $b){ //выполнится echo '$a || $b<br>'; } |
var a = 10; var b = 5; console.log('a=',a,' $b=',b); console.log('-a = ',(-a)," - Отрицание"); console.log('a + b = ',(a + b)," - Сложение"); console.log('a - b = ',(a - b)," - Вычитание"); console.log('a * b = ',(a * b)," - Умножение"); console.log('a / b = ',(a / b)," - Деление"); console.log('a % b = ',(a % b )," - Деление по модулю - Целочисленный остаток от деления a на b"); a = true; b = false; if(!a){ //НЕ выполнится console.log('!a'); } else if(!b){ //выполнится console.log('!b'); } if(a && b){ //не выполнится console.log('a && b'); } else if(a && !b){ //выполнится console.log('a && !b'); } if(a || b){ //выполнится console.log('a || b'); } |
Операторы сравнения
Пример | Название | Результат |
---|---|---|
$a == $b | Равно | TRUE если $a равно $b. |
$a === $b | Тождественно равно | TRUE если $a равно $b и имеет тот же тип. (Добавлено в PHP 4) |
$a != $b | Не равно | TRUE если $a не равно $b. |
$a <> $b | Не равно | TRUE если $a не равно $b. |
$a !== $b | Тождественно не равно | TRUE если $a не равно $b или в случае, если они разных типов (Добавлено в PHP 4) |
$a < $b | Меньше | TRUE если $a строго меньше $b. |
$a > $b | Больше | TRUE если $a строго больше $b. |
$a <= $b | Меньше или равно | TRUE если $a is меньше или равно $b. |
$a >= $b | Больше или равно | TRUE если $a больше или равно $b. |
Операторы инкремента и декремента
php, js
js (из примера убрать $)
Пример | Название | Действие |
---|---|---|
++$a | Префиксный инкремент | Увеличивает $a на единицу и возвращает значение $a. |
$a++ | Постфиксный инкремент | Возвращает значение $a, а затем увеличивает $a на единицу. |
--$a | Префиксный декремент | Уменьшает $a на единицу и возвращает значение $a. |
$a-- | Постфиксный декремент | Возвращает значение $a, а затем уменьшает $a на единицу. |
php
$a = 10; $b = $a++; echo '$b = $a++; => $a='.$a.', $b='.$b."<br>"; //$b = $a++; => $a=11, $b=10 $a = 10; $b = ++$a; echo '$b = ++$a; => $a='.$a.', $b='.$b."<br>"; //$b = ++$a; => $a=11, $b=11 $a = 10; $b = $a--; echo '$b = $a--; => $a='.$a.', $b='.$b."<br>"; //$b = $a--; => $a=9, $b=10 $a = 10; $b = --$a; echo '$b = --$a; => $a='.$a.', $b='.$b."<br>"; //$b = --$a; => $a=9, $b=9 |
var a = 10; var b = a++; console.log('b = a++; => a=',a,', b=',b); a = 10; b = ++a; console.log('b = ++a; => a=',a,', b=',b); a = 10; b = a--; console.log('b = $a--; => a=',a,', b=',b); a = 10; b = --a; console.log('b = --a; => a=',a,', b=',b); |
Тернарный оператор
php
$max = (b > a) ? b : a; |
max = (b > a) ? b : a; |
Если b>a, то max присвоится b, иначе max присвоится a |
Пример | Эквивалент | Операция |
---|---|---|
$a .= $b | $a = $a . $b | Конкатенация строк |
$a ??= $b | $a = $a ?? $b | Объединение с Null |
<? $s = "какой-то текст"; $s = $s . " и к нему еще текст2"; $s .= ", и еще добавим текст3"; $s = "начальный ".$s; /* $s = $s + "а так не работает"; $s =. "и так не работает"; */ ?> $s равно:<br> <?=$s?> <?// начальный какой-то текст и к нему еще текст2, и еще добавим текст3 |
Приоритеты выполнения операторов
Приоритет | Оператор | Порядок выполнения |
13 | (постфикс)++ (постфикс)-- | слева направо |
12 | ++(префикс) --(префикс) | справа налево |
11 | * / % | слева направо |
10 | + - | слева направо |
9 | << >> | слева направо |
8 | < <= > >= | слева направо |
7 | == != | слева направо |
6 | & | слева направо |
5 | ^ | слева направо |
4 | | | слева направо |
3 | && | слева направо |
2 | || | слева направо |
1 | = += -= *= /= %= >>= <<== &= ^= |= | справа налево |
Побитовые операторы
редко используются
Пример | Название | Результат |
---|---|---|
$a & $b | Побитовое 'и' | Устанавливаются только те биты, которые установлены и в $a, и в $b. |
$a | $b | Побитовое 'или' | Устанавливаются те биты, которые установлены либо в $a, либо в $b. |
$a ^ $b | Исключающее или | Устанавливаются только те биты, которые установлены либо только в $a, либо только в $b |
~ $a | Отрицание | Устанавливаются те биты, которые в $a не установлены, и наоборот. |
$a << $b | Сдвиг влево | Все биты переменной $a сдвигаются на $b позиций влево (каждая позиция подразумевает 'умножение на 2') |
$a >> $b | Сдвиг вправо | Все биты переменной $a сдвигаются на $b позиций вправо (каждая позиция подразумевает 'деление на 2') |