Округление чисел php. Округлить целое число в меньшую сторону Php
Добрый вечер друзья, сегодня мы продолжаем изучения языка PHP
. Тема, которую мы сегодня изучим, называется округление чисел в PHP
.
Иногда в результате выполнения некоторых функций, Вы получаете результат, который не является целым числом, а перед Вами стоит
задача получить целое число. Первый пример, который приходит в голову, это генерация страниц на вашем сайте. И на помощь в решении такой задачи к Вам
приходят три функции: round
, ceil
, floor
.
Поговорим о каждой функции отдельно. Первая функция round
занимается округлением
числа с плавающей точкой. В качестве параметров функции она может принимать просто число, которое будет округляться, а в качестве второго параметра мы можем указать
число, которое будет означать количество цифр после запятой, после округления.
Вторая функция ceil
, позволяет округлять дробь в большую сторону, в качестве параметра задается лишь число для дальнейшего округления.
И последняя функция floor
, противоположность ceil
, и занимается округлением в меньшую сторону, и также принимает один параметр.
Теперь рассмотрим каждую функцию на примере.
echo round(7.123
).
"
"
;
echo round(7.492, 1
).
"
"
;
echo round(7.92, 0
).
"
"
;
echo "
"
;
echo ceil(9.3
).
"
"
;
echo ceil(9.8
).
"
"
;
echo "
"
;
echo floor(4.2
).
"
"
;
echo floor(4.7
).
"
"
;
?>
Как видите все довольно просто в использовании, достаточно посмотреть на результат выполнения данных функций и все вопросы у Вас отпадут.
Так что я считаю комментирование излишним, и на этом мы будем завершать изучение темы округления чисел на PHP . И на сегодня я с Вами прощаюсь, до скорого.
Округление числа в любом языке программирования может быть выполнено до целого числа или до заданного количества знаков после запятой. Кроме того, учитывается еще, в какую сторону округляется число – к большему или меньшему значению, а так же математически в ближайшую сторону.
В PHP для округления чисел применяются следующие функции:
- round – округление до ближайшего значения;
- ceil – округление до ближайшего значения в большую сторону;
- floor – округление до ближайшего значения в меньшую сторону.
Округление до целого числа
Все функции в качестве основного параметра используют значение с плавающей точкой. Например:
$x = 123.4393;
При выполнении каждой функции, получим следующие значения:
echo
ceil($x); // 124 (к большему целому значению)
echo
floor($x); // 123 (к меньшему целому значению)
echo
round($x); // 123 (математически к ближайшему)
При математическом округлении, учитывается значение числа округляемой части. Если оно меньше 5, округляется к меньшему. Если равно или больше 5, округление будет выполнено в большую сторону. В данном случае функция round округляет к меньшему значению, т.к. значение дробной части меньше 0.5. Если использовать значение больше, например:
$x = 123.5;
В результате округления, получим:
echo round($x); // 124
Округление числа до заданного количества знаков после запятой
Для такого округления чисел используется только функция round , имеющая второй (не обязательный) параметр, определяющий точность округления. Задав его можно получить необходимое количество знаков после запятой:
$x = 123.8393;
echo
round($x, 1); // 123.8
echo
round($x, 2); // 123.84
echo
round($x, 3); // 123.839
Другие примеры округления
Если вдруг потребовалось реализовать более экзотическое округление – к большему или меньшему значению с заданным количеством знаков после запятой, потребуются дополнительные операции. Как было сказано выше, функции ceil и floor имеют только один параметр и не смогут округлить число до заданной точности.
В таких случаях можно выполнить умножение числа, чтобы затем округлить нужным способом. Например, число нужно округлить до большего значения с двумя знаками после запятой:
$x = 123.8313;
echo
ceil($x * 100) / 100; // 123.84
В результате получим 123.84, хотя аналогичное округление функцией round в данном случае вернуло бы 123.83.
Так же можно поступить, если нужно округлить до меньшего значения с заданной точностью:
$x = 123.8393;
echo
floor($x * 100) / 100; // 123.83
Друзья!
Мы находимся в процессе большой чистки!
Возможны ошибки и кривизна страниц
Просмотреть всё и быстро не возможно!
Если нашли какую-то ошибку, то если вам не трудно напишите адрес...
Сейчас вы здесь:
http://сайт/page/php/function/050_okruglit_tseloe_chislo_v_menshuyu_storonu_php.html
Округлить целое число в меньшую сторону Php.
У нас очередная задачка – округлить целое число в меньшую сторону, причем всегда! Если даже не хватает единицы до одного числа впереди и отсальными нулями...!
Скорее всего непонятно…, например, у нас есть число 24 999 его нужно округлить в меньшую сторону. Что у нас и будет 20 000
У нас есть функции которые могут округлять в меньшую сторону целое число, но только до тех пор, пока число не перевалит через середину…
Нам нужно округлить число 24 999
Round(24999, -4);
И получаем:
Но как только мы переходим середину 25 000. То данная функция округляет вверх.
Я пытался найти функцию или какие-то варианты и в общем ничего не нашел! Но надо же как-то выходить из ситуации! И причем у нас стоит задача. Чтобы данная функция округляло любое число, если оно больше 10 в меньшую сторону!
Что нужно сделать!? Нужно взять
Все просто!
И у нас получится именно-то, что и требуется!
Результат:
20000 Оналйн округления до самого меньшего целого числа числа
Для того, чтобы проверить округление числа в меньшую строну с помощью Php – попробуйте округлить любое число, кроме однозначного…