numberFormat

With this property you can format a float value and display it as you want, for example as a price. It is a wrapper for the number_format() function of PHP.

You can define how many decimals you want and which separators you want for decimals and thousands.

Since the properties are finally used by the PHP function number_format(), you need to make sure that they are valid parameters for that function. Consult the PHP manual, if unsure.

Properties

decimals

Property
decimals
Data type
integer / stdWrap
Description
Number of decimals the formatted number will have.
Default

Your input will in that case be rounded up or down to the next integer.

dec_point

Property
dec_point
Data type
string / stdWrap
Description
Character that divides the decimals from the rest of the number.
Default
.

thousands_sep

Property
thousands_sep
Data type
string / stdWrap
Description
Character that divides the thousands of the number. Set an empty value to have no thousands separator.
Default
,

Examples

EXT:site_package/Configuration/TypoScript/setup.typoscript
lib.myPrice = TEXT
lib.myPrice {
  value = 0.8
  stdWrap.numberFormat {
    decimals = 2
    dec_point.cObject = TEXT
    dec_point.cObject {
      value = .
      stdWrap.lang.de = ,
    }
  }
  stdWrap.noTrimWrap = || €|
}
# Will basically result in "0.80 €", but for German in "0,80 €".

lib.carViews = CONTENT
lib.carViews {
    table = tx_mycarext_car
    select.pidInList = 42
    renderObj = TEXT
    renderObj {
        stdWrap.field = views
        # By default use 3 decimals or
        # use the number given by the Get/Post variable precisionLevel, if set.
        stdWrap.numberFormat.decimals = 3
        stdWrap.numberFormat.decimals.override.data = GP:precisionLevel
        stdWrap.numberFormat.dec_point = ,
        stdWrap.numberFormat.thousands_sep = .
    }
}
# Could result in something like "9.586,007".
Copied!