(PHP 4, PHP 5, PHP 7)
number_format — Форматирует число с разделением групп
$number
[, int $decimals
= 0
] ) : string$number
, int $decimals
= 0
, string $dec_point
= "."
, string $thousands_sep
= ","
) : stringФункция принимает один, два или четыре аргумента (не три):
Если передан только один аргумент, number
будет отформатирован без дробной части, но с запятой (",") между
каждыми тремя цифрами.
Если переданы два аргумента, number
будет
отформатирован с decimals
знаками после точки
(".") и с запятой (",") между каждыми тремя цифрами.
Если переданы все четыре аргумента, number
будет отформатирован с decimals
знаками после
точки и с разделителем между каждыми тремя цифрами, при этом в качестве
десятичной точки будет использован dec_point
,
а в качестве разделителя групп - thousands_sep
.
number
Форматируемое число.
decimals
Устанавливает число знаков после запятой.
dec_point
Устанавливает разделитель дробной части.
thousands_sep
Устанавливает разделитель тысяч.
Отформатированное число number
.
Версия | Описание |
---|---|
7.2.0 |
number_format() была изменена, чтобы не возвращать
-0, ранее -0 могло быть возвращено в
случаях, когда number был -0.01.
|
5.4.0 |
Функция поддерживает многобайтовую строку в качестве параметров
dec_point и
thousands_sep . В предыдущих версиях
в качестве разделителя использовался
только первый байт из каждого параметра.
|
Пример #1 Пример использования number_format()
Во Франции обычно используются 2 знака после запятой (','), и пробел (' ') в качестве разделителя групп. Этот пример демонстрирует различные способы форматирования чисел:
<?php
$number = 1234.56;
// английский формат (по умолчанию)
$english_format_number = number_format($number);
// 1,235
// французский формат
$nombre_format_francais = number_format($number, 2, ',', ' ');
// 1 234,56
$number = 1234.5678;
// английский формат без разделителей групп
$english_format_number = number_format($number, 2, '.', '');
// 1234.57
?>