Class Number
Number helper library.
Methods to make numbers more readable.
Link: https://book.cakephp.org/3.0/en/core-libraries/number.html
Location: I18n/Number.php
Constants summary
Properties summary
-
$_defaultCurrency
protected staticstring|null
Default currency used by Number::currency() -
$_formatters
protected staticarray
A list of number formatters indexed by locale and type
Method Summary
-
_setAttributes() protected static
Set formatter attributes -
config() public static
Configure formatters. -
currency() public static
Formats a number into a currency format. -
defaultCurrency() public static
Getter/setter for default currency -
format() public static
Formats a number into the correct locale format -
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, [...]) -
parseFloat() public static
Parse a localized numeric string and transform it in a float point -
precision() public static
Formats a number with a level of precision. -
toPercentage() public static
Formats a number into a percentage string. -
toReadableSize() public static
Returns a formatted-for-humans file size.
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
config() public static ¶
config( string $locale , integer $type Cake\I18n\NumberFormatter::DECIMAL , array $options [] )
Configure formatters.
Parameters
- string $locale
- The locale name to use for formatting the number, e.g. fr_FR
- integer $type optional Cake\I18n\NumberFormatter::DECIMAL
- The formatter type to construct. Defaults to NumberFormatter::DECIMAL.
- array $options optional []
- See Number::formatter() for possible options.
currency() public static ¶
currency( float $value , string|null $currency null , array $options [] )
Formats a number into a currency format.
Options
locale
- The locale name to use for formatting the number, e.g. fr_FRfractionSymbol
- 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 numberafter
- Text to display after the rendered numberzero
- 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. 2precision
- Maximum Number of decimal places to use, e.g. 2pattern
- An ICU number pattern to use for formatting the number. e.g #,##0.00useIntlCode
- Whether or not to replace the currency symbol with the international currency code.
Parameters
- float $value
- Value to format.
- string|null $currency optional null
- International currency name such as 'USD', 'EUR', 'JPY', 'CAD'
- array $options optional []
- Options list.
Returns
Number formatted as a currency.
defaultCurrency() public static ¶
defaultCurrency( string|boolean|null $currency null )
Getter/setter for default currency
Parameters
- string|boolean|null $currency optional null
Default currency string to be used by currency() if $currency argument is not provided. If boolean false is passed, it will clear the currently stored value
Returns
Currency
format() public static ¶
format( float $value , array $options [] )
Formats a number into the correct locale format
Options:
places
- Minimum number or decimals to use, e.g 0precision
- Maximum Number of decimal places to use, e.g. 2pattern
- An ICU number pattern to use for formatting the number. e.g #,##0.00locale
- The locale name to use for formatting the number, e.g. fr_FRbefore
- The string to place before whole numbers, e.g. '['after
- The string to place after decimal numbers, e.g. ']'
Parameters
- float $value
- A floating point number.
- array $options optional []
- An array with options.
Returns
Formatted number
formatDelta() public static ¶
formatDelta( float $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 0precision
- Maximum Number of decimal places to use, e.g. 2locale
- The locale name to use for formatting the number, e.g. fr_FRbefore
- The string to place before whole numbers, e.g. '['after
- The string to place after decimal numbers, e.g. ']'
Parameters
- float $value
- A floating point number
- array $options optional []
- Options list.
Returns
formatted 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_FRtype
- The formatter type to construct, set it tocurrency
if you need to format numbers representing money or a NumberFormatter constant.places
- Number of decimal places to use. e.g. 2precision
- Maximum Number of decimal places to use, e.g. 2pattern
- An ICU number pattern to use for formatting the number. e.g #,##0.00useIntlCode
- Whether or not to replace the currency symbol with the international currency code.
Parameters
- array $options optional []
- An array with options.
Returns
The configured formatter instance
ordinal() public static ¶
ordinal( integer|float $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 tocurrency
if you need to format numbers representing money or a NumberFormatter constant.
For all other options see formatter().
Parameters
- integer|float $value
- An integer
- array $options optional []
- An array with options.
Returns
parseFloat() 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_FRtype
- The formatter type to construct, set it tocurrency
if you need to parse numbers representing money.
Parameters
- string $value
- A numeric string.
- array $options optional []
- An array with options.
Returns
point number
precision() public static ¶
precision( float $value , integer $precision 3 , 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 $value
- A floating point number.
- integer $precision optional 3
- The precision of the returned number.
- array $options optional []
- Additional options
Returns
Formatted float.
Link
toPercentage() public static ¶
toPercentage( float $value , integer $precision 2 , 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 $value
- A floating point number
- integer $precision optional 2
- The precision of the returned number
- array $options optional []
- Options
Returns
Percentage string
Link
toReadableSize() public static ¶
toReadableSize( integer $size )
Returns a formatted-for-humans file size.
Parameters
- integer $size
- Size in bytes
Returns
Human readable size