базовый курс

ГРУППА КУРСА

Работа с числами в PHP

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

В PHP есть арифметические операторы +, -, *, и /. Смысл их очевиден - они выполняют арифметические вычисления.

+
1
2
<?php
header('Content-type: text/html; charset=utf-8');
3
4
$x = 5+1;
$n = 170 - $x * 4.7;

Есть ещё один арифметический оператор: %. Хотя он выглядит как знак процента, он не имеет отношения к расчёту процентов. Он возвращает остаток от деления. Пример:

5
$f = 53%8;

Приоритет операторов

Может возникнуть вопрос: почему арифметические опрераторы выполняются раньше, чем опрератор присваивания? Это происходит потому, что операторы имеют разный приоритет. Чем выше приоритет оператора, тем раньше он выполняется.

Из математики мы знаем, что умножение и деление проиводится раньше, чем сложение и вычитание. Конечно приоритет операторов учитывает это правило. Кроме того, часть выражения может быть в скобках и эта часть расчитывается первой. Это правило тоже работает.

У опрератора присваивания самый низкий приоритет и он выполняется последним. Поэтому получается так: сначала выполняеются арифметические вычисления, а потом результат присваивается переменной.

Результат вычислений часто записывается в переменную. Причём, эта переменная тоже может участвовать в вычислениях:

6
$x = $x + 7;

Данный пример работает так:

  • Cначала производится сложение. При этом используется старое значение переменной $x.
  • Затем результат расчётов записывается в эту переменную.

Для таких вычислений есть более короктая запись. Эту строку можно написать так:

6
$x += 7;

Инкремент и декремент

Инкремент увеличивает значение переменной на 1. Он пишется так: ++. Декремент уменьшает значение переменной на 1. Он виглядит так: --. Их можно ставить как до переменной так и после. Пример:

8
$x++;

Инкремент или декремент может применяться к переменной, которая находится внутри какого-то выражения. В этом случае имеет значение, где расположен инкремент, до переменной или после. Если он идёт до переменной, то в выражении используется новое значение. Если он идёт после переменной, то используется старое значение.

Математические функции

В PHP есть достаточно много математических функций. Самые распространённые перечислены в таблице:

Функция Зачение
ceil(x) Округляет значение x до целого числа в большую сторону
floor(x) Округляет значение x до целого числа в меньшую сторону
round(x, n) Округляет значение x с точностью n знаков после запятой. n можно не указывать
abs(x) Модуль числа
sqrt(x) Квадратный корень из числа x
pow(x, y) Возводит x в степень y
exp(x) Экспонента числа x
log(x, y) Логорифм числа x по основанию y. Если не указать y, то функция возвращает натуральный логорифм
max(a, b, c) Возвращает наибольшее значение. Если функции передан массив, то она вернёт наибольшее из значений массива
min(a, b, c) Возвращает наименьшее значение. Если функции передан массив, то она вернёт наименьшее из значений массива
deg2rad(x) Преобразование градусов в радианы
rad2deg(x) Преобразование радианов в градусы
sin(x) Синус x. Параметр функции указывается в радианах
cos(x) Косинус. x Параметр функции указывается в радианах
tan(x) Тангенс x Параметр функции указывается в радианах
asin(x) Арксинус x. Возвращает значение в радианах
acos(x) Арккосинус x. Возвращает значение в радианах
atan(x) Арктангенс x. Возвращает значение в радианах