Помните школьные основы арифметики? Описанные ниже операторы работают так же.
Пример | Название | Результат |
---|---|---|
+$a |
Идентичность | Конвертация значения переменной $a в целое число (int) или число с плавающей точкой (float), если нужно. |
-$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 в степень, указанную в переменной $b. |
Оператор деления /
возвращает значение с типом float,
если только оба операнда не значения с типом int
или числовые строки, которые приводятся
к типу int, и числитель не кратен знаменателю, при которых возвращается целочисленное значение.
Для целочисленного деления вызывают функцию intdiv().
При делении по модулю операнды преобразовываются в целые числа (int) (путём удаления дробной части) до начала операции. Для деления по модулю чисел с плавающей точкой вызывают функцию fmod().
Результат операции остатка от деления %
получит тот же знак,
что и делимое — то есть, результат выражения $a % $b
получит тот же знак, что и значение переменной $a. Например:
<?php
var_dump(5 % 3);
var_dump(5 % -3);
var_dump(-5 % 3);
var_dump(-5 % -3);
?>
Результат выполнения приведённого примера:
int(2) int(2) int(-2) int(-2)