Class Number

Number helper library.

Methods to make numbers more readable.

Constants summary

Properties summary

  • $_defaultCurrency protected static
    string
    Default currency used by Number::currency()
  • $_formatters protected static
    array
    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()source 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

NumberFormatter

config()source 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()source 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_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 #,###.00
  • useIntlCode - 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

string
Number formatted as a currency.

defaultCurrency()source 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

string
Currency

format()source 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 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 #,###.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 $value
A floating point number.
array $options optional []
An array with options.

Returns

string
Formatted number

formatDelta()source 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 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 $value
A floating point number
array $options optional []
Options list.

Returns

string
formatted delta

formatter()source 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 to currency if 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 #,###.00
  • useIntlCode - Whether or not to replace the currency symbol with the international currency code.

Parameters

array $options optional []
An array with options.

Returns

NumberFormatter
The configured formatter instance

ordinal()source 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 to currency 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

string

parseFloat()source 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 to currency if you need to parse numbers representing money.

Parameters

string $value
A numeric string.
array $options optional []
An array with options.

Returns

float
point number

precision()source 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

string
Formatted float.

Link

http://book.cakephp.org/3.0/en/core-libraries/number.html#formatting-floating-point-numbers

toPercentage()source 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

string
Percentage string

Link

http://book.cakephp.org/3.0/en/core-libraries/number.html#formatting-percentages

toReadableSize()source public static

toReadableSize( integer $size )

Returns a formatted-for-humans file size.

Parameters

integer $size
Size in bytes

Returns

string
Human readable size

Link

http://book.cakephp.org/3.0/en/core-libraries/number.html#interacting-with-human-readable-values

Properties detail

$_defaultCurrencysource

protected static string

Default currency used by Number::currency()

$_formatterssource

protected static array

A list of number formatters indexed by locale and type

[]

© 2005–2016 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.
http://api.cakephp.org/3.2/class-Cake.I18n.Number.html