Formats a number with grouped thousands and optionally decimal digits using the rounding half up rule.
Parameters
num
The number being formatted.
decimals
Sets the number of decimal digits.
If 0, the decimal_separator is
omitted from the return value.
As of PHP 8.3.0, when the value is negative, num
is rounded to decimals significant digits before
the decimal point.
Prior to PHP 8.3.0, negative values were ignored and handled the
same as 0.
decimal_separator
Sets the separator for the decimal point.
thousands_separator
Sets the thousands separator.
Return Values
A formatted version of num.
Changelog
Version
Description
8.3.0
Added handling of negative values for decimals.
8.0.0
Prior to this version, number_format() accepted
one, two, or four parameters (but not three).
7.2.0
number_format() was changed to not being able to return
-0, previously -0 could be returned
for cases like where num would be -0.01.
Examples
Example #1 number_format() Example
For instance, French notation usually use two decimals,
comma (',') as decimal separator, and space (' ') as
thousand separator. The following example demonstrates various ways to format a number: