Функция round в PHP на примерах

В некоторых случаях на сайте может потребоваться автоматическое округление числа до целого в большую или меньшую сторону. Например, нам нужно, чтобы в каталоге товаров цена указывалась кратно 100 или 50 рублям. Тогда на помощь приходят функции php: round, ceil и floor.

На фото изображено окно редактора Notepad.

Округление до целого

Округлить число можно в большую или меньшую сторону. С этим справляются функции ceil и floor.

К большему значению

$a = 1,234;

echo ceil ($a);   //на экране отобразится 2

К меньшему значению

$a = 3,2;

echo floor ($a); //увидим 3

С указанием количества знаков после запятой

Функция round используется, если нужно указать точность округления числа с точкой. Записывается она так:

round ( $a, [количество десятичных знаков, до которых производится округление] );

Пример кода php:

$a = 1,23432;

echo round ($a, 2);     //на экране будет число с двумя знаками после запятой – 1,23

Также данная функция допускает использование третьего параметра. Это константы PHP_ROUND_HALF, которые расширяют возможности использования. _UP и _DOWN, добавленные в конце, дают программисту возможность задать точность округления в спорных моментах. Например, если случайное число будет 2,5, то оно может преобразоваться либо в 2, либо в 3.

_EVEN округлит число, учитывая десятичные знаки, до четного значения.

_ODD обладает схожим действием, но делает число нечетным.

Иначе такие манипуляции еще называют банковским округлением.

Кратно десяткам, сотням, тысячам

Если нужно не просто округлить количество знаков после запятой, а сделать число кратным определенному значению, можно воспользоваться round, указав второй параметр отрицательным. Но, как показывает практика, так не всегда получаются точные решения, поэтому рекомендуем использовать умножение и деление.

Пример: нужно $a = 208 округлить до десятков в большую сторону, чтобы получилось 210. Для этого пишем:

echo ceil ($a / 10) *10;

Сначала выполнится действие в скобках, в ходе которого получится 20,8. Далее сработает округление до большего – 21. После 21 умножается на 10 и получается необходимое значение. Для округления кратно сотням и тысячам 10 меняется на 100 и 1000.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *