Выражения. Арифметические операторы

Операторы

Арифметические операторы

Помните основную арифметику из школы? Эти операторы работают подобным образом

Таблица 7-1. Арифметические операторы

пример название результат
$a + $b Сложение Сумма $a и $b.
$a - $b Вычитание Вычитает $b из $a.
$a * $b Умножение Произведение $a и $b.
$a / $b Деление Деление $a на $b.
$a % $b Остаток деления Остаток от деления $a на $b.

Оператор деления("/") возвращает целую величину(результат целочисленного деления) если оба оператора - целые (или строка преобразованная в целое). Если каждый операнд является величиной с плавающей запятой, выполнится деление с плавающей запятой.

Операторы строк

B действительности есть только один оператор -- оператор конкатенации (".").

$a = "Hello ";$b = $a . "World!"; // теперь $b = "Hello World!"

Операторы присваивания

Основным оператором присваивания является "=". Вы могли подумать что это "равно"("equal to"). Но это не так. В действительности это означает что левый операнд получает значение выражения в правых (собирательное присваивание).

Значением выражения присваивания является присваиваемая величина. Так что если "$a = 3", то это 3. Это позволит Вам делать некоторые мудреные вещи:

$a = ($b = 4) + 5; // теперь $a равно 9, а $b стало равным 4.

В дополнение к основным операторам присваивания есть дополнительные "комбинационные операторы",для всех арифметических и строковых операторов, что позволяет Вам использовать значение в выражении и затем устанавливать свое значение в результате этого выражения. Например:

$a = 3; $a += 5; // теперь $a равно 8, как если бы мы сказали: $a = $a + 5;
$b = "Hello ";
$b .= "There!"; // теперь $b равно "Hello There!", как если бы мы написали $b = $b . "There!";

Бинарные Операторы (Побитовые Логические Операторы)

Бинарные Операторы позволяют вам изменять биты в целых числах.

Table 7-2.Бинарные Операторы

пример название результат
$a & $b И Будут установлены биты, которые были установлены и в $a и в $b. *Пример вебклуба: $a=5; /* 0101 */ $b=12; /* 1100 */ $c=$a & $b; /* $c будет равно 4 (0100) */
$a | $b Или Будут установлены биты, установленные в $a или $b . *Пример вебклуба: $a=5; /* 0101 */ $b=12; /* 1100 */ $c=$a|$b; /* $c будет (1101) */
~ $a Не Будут установлены не_присутствующие в $a биты (реверс) *Пример вебклуба: $a=5; /* 0101 */ ~ $a /* $a будет равно x (1010) */

Логические операторы

Таблица 7-3. Логические операторы

пример название результат
$a and $b И Истина, если истинны $a и $b.
$a or $b Или Истина, если истинны $a или $b.
$a xor $b Или Истина, если истинны $a или $b, но не оба.
! $a Не Истина, если не истинно $a.
$a && $b И Истина, если истинны и $a и $b.
$a || $b Или Истина, если истинны $a или $b.

Разница в двух различных вариантах операторов "and" и "or" - в различии приоритетов операций. (см. ниже)