Class Number
Number helper library.
Methods to make numbers more readable.
Constants summary
-
intCURRENCY_ACCOUNTING12 -
stringDEFAULT_LOCALE'en_US' -
stringFORMAT_CURRENCY'currency' -
stringFORMAT_CURRENCY_ACCOUNTING'currency_accounting'
Properties summary
- $_defaultCurrency protected static
string|nullDefault currency used by Number::currency()
- $_defaultCurrencyFormat protected static
stringDefault currency format used by Number::currency()
- $_formatters protected static
arrayA list of number formatters indexed by locale and type
Method Summary
- defaultCurrency() public static
Getter/setter for default currency. This behavior is deprecated and will be removed in future versions of CakePHP.
- formatDelta() public static
Formats a number into the correct locale format to show deltas (signed differences in value).
- formatter() public static
Returns a formatter object that can be reused for similar formatting task under the same locale and options. This is often a speedier alternative to using other methods in this class as only one formatter object needs to be constructed.
- ordinal() public static
Returns a formatted integer as an ordinal number string (e.g. 1st, 2nd, 3rd, 4th, [...])
Method Detail
_setAttributes() protected static
_setAttributes(\NumberFormatter $formatter, array $options)
Set formatter attributes
Parameters
-
\NumberFormatter$formatter Number formatter instance.
-
array$options optional See Number::formatter() for possible options.
Returns
\NumberFormatterconfig() public static
config(string $locale, int $type, array $options)
Configure formatters.
Parameters
-
string$locale The locale name to use for formatting the number, e.g. fr_FR
-
int$type optional The formatter type to construct. Defaults to NumberFormatter::DECIMAL.
-
array$options optional See Number::formatter() for possible options.
currency() public static
currency(mixed $value, ?string $currency, array $options)
Formats a number into a currency format.
Options
-
locale- The locale name to use for formatting the number, e.g. fr_FR -
fractionSymbol- The currency symbol to use for fractional numbers. -
fractionPosition- The position the fraction symbol should be placed valid options are 'before' & 'after'. -
before- Text to display before the rendered number -
after- Text to display after the rendered number -
zero- The text to use for zero values, can be a string or a number. e.g. 0, 'Free!' -
places- Number of decimal places to use. e.g. 2 -
precision- Maximum Number of decimal places to use, e.g. 2 -
pattern- An ICU number pattern to use for formatting the number. e.g #,##0.00 -
useIntlCode- Whether or not to replace the currency symbol with the international currency code.
Parameters
-
float|string$value Value to format.
-
string|null$currency optional International currency name such as 'USD', 'EUR', 'JPY', 'CAD'
-
array$options optional Options list.
Returns
stringNumber formatted as a currency.
defaultCurrency() public static
defaultCurrency(mixed $currency)
Getter/setter for default currency. This behavior is deprecated and will be removed in future versions of CakePHP.
Parameters
-
string|false|null$currency optional Default currency string to be used by {@link currency()} if $currency argument is not provided. If boolean false is passed, it will clear the currently stored value
Returns
string|nullCurrency
format() public static
format(mixed $value, array $options)
Formats a number into the correct locale format
Options:
-
places- Minimum number or decimals to use, e.g 0 -
precision- Maximum Number of decimal places to use, e.g. 2 -
pattern- An ICU number pattern to use for formatting the number. e.g #,##0.00 -
locale- The locale name to use for formatting the number, e.g. fr_FR -
before- The string to place before whole numbers, e.g. '[' -
after- The string to place after decimal numbers, e.g. ']'
Parameters
-
float|string$value A floating point number.
-
array$options optional An array with options.
Returns
stringFormatted number
formatDelta() public static
formatDelta(mixed $value, array $options)
Formats a number into the correct locale format to show deltas (signed differences in value).
Options
-
places- Minimum number or decimals to use, e.g 0 -
precision- Maximum Number of decimal places to use, e.g. 2 -
locale- The locale name to use for formatting the number, e.g. fr_FR -
before- The string to place before whole numbers, e.g. '[' -
after- The string to place after decimal numbers, e.g. ']'
Parameters
-
float|string$value A floating point number
-
array$options optional Options list.
Returns
stringformatted delta
formatter() public static
formatter(array $options)
Returns a formatter object that can be reused for similar formatting task under the same locale and options. This is often a speedier alternative to using other methods in this class as only one formatter object needs to be constructed.
Options
-
locale- The locale name to use for formatting the number, e.g. fr_FR -
type- The formatter type to construct, set it tocurrencyif you need to format numbers representing money or a NumberFormatter constant. -
places- Number of decimal places to use. e.g. 2 -
precision- Maximum Number of decimal places to use, e.g. 2 -
pattern- An ICU number pattern to use for formatting the number. e.g #,##0.00 -
useIntlCode- Whether or not to replace the currency symbol with the international currency code.
Parameters
-
array$options optional An array with options.
Returns
\NumberFormatterThe configured formatter instance
getDefaultCurrency() public static
getDefaultCurrency()
Getter for default currency
Returns
stringCurrency
getDefaultCurrencyFormat() public static
getDefaultCurrencyFormat()
Getter for default currency format
Returns
stringCurrency Format
ordinal() public static
ordinal(mixed $value, array $options)
Returns a formatted integer as an ordinal number string (e.g. 1st, 2nd, 3rd, 4th, [...])
Options
-
type- The formatter type to construct, set it tocurrencyif you need to format numbers representing money or a NumberFormatter constant.
For all other options see formatter().
Parameters
-
int|float$value An integer
-
array$options optional An array with options.
Returns
stringparseFloat() public static
parseFloat(string $value, array $options)
Parse a localized numeric string and transform it in a float point
Options:
-
locale- The locale name to use for parsing the number, e.g. fr_FR -
type- The formatter type to construct, set it tocurrencyif you need to parse numbers representing money.
Parameters
-
string$value A numeric string.
-
array$options optional An array with options.
Returns
floatpoint number
precision() public static
precision(mixed $value, int $precision, array $options)
Formats a number with a level of precision.
Options:
-
locale: The locale name to use for formatting the number, e.g. fr_FR
Parameters
-
float|string$value A floating point number.
-
int$precision optional The precision of the returned number.
-
array$options optional Additional options
Returns
stringFormatted float.
Links
setDefaultCurrency() public static
setDefaultCurrency(?string $currency)
Setter for default currency
Parameters
-
string|null$currency optional Default currency string to be used by {@link currency()} if $currency argument is not provided. If null is passed, it will clear the currently stored value
setDefaultCurrencyFormat() public static
setDefaultCurrencyFormat(mixed $currencyFormat)
Setter for default currency format
Parameters
-
string|null$currencyFormat optional Default currency format to be used by currency() if $currencyFormat argument is not provided. If null is passed, it will clear the currently stored value
toPercentage() public static
toPercentage(mixed $value, int $precision, array $options)
Formats a number into a percentage string.
Options:
-
multiply: Multiply the input value by 100 for decimal percentages. -
locale: The locale name to use for formatting the number, e.g. fr_FR
Parameters
-
float|string$value A floating point number
-
int$precision optional The precision of the returned number
-
array$options optional Options
Returns
stringPercentage string
Links
toReadableSize() public static
toReadableSize(mixed $size)
Returns a formatted-for-humans file size.
Parameters
-
int|string$size Size in bytes
Returns
stringHuman readable size
Links
Property Detail
$_defaultCurrency protected static
Default currency used by Number::currency()
Type
string|null$_defaultCurrencyFormat protected static
Default currency format used by Number::currency()
Type
string$_formatters protected static
A list of number formatters indexed by locale and type
Type
array
© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.0/class-Cake.I18n.Number.html