Вывод числа по формату — различия между версиями
Материал из Umicms
Kirill (обсуждение | вклад) (Новая страница: «'''Задача:''' <br/> Иногда, хостинг настроен таким образом, что округление до целого числа не пр…») |
Mad grant (обсуждение | вклад) |
||
(не показаны 2 промежуточные версии 2 участников) | |||
Строка 13: | Строка 13: | ||
<xsl:variable name = "my_var" > <xsl:value-of select ="20-10.8" /></xsl:variable> | <xsl:variable name = "my_var" > <xsl:value-of select ="20-10.8" /></xsl:variable> | ||
<xsl:value-of select = "format-number($my_var,'#.##')" /> | <xsl:value-of select = "format-number($my_var,'#.##')" /> | ||
+ | |||
+ | |||
+ | При использование такого вывода, округление будет происходить до нужного порядка. | ||
+ | [[Категория:Верстка в XSLT]] |
Текущая версия на 19:56, 4 июня 2013
Задача:
Иногда, хостинг настроен таким образом, что округление до целого числа не происходит. Тогда результат некоторых арифметических операции может быть непредсказуем. К примеру 20 - 10.8 = 9,19999(9), что совершенно не приемлемо для интернет магазина. Что делать, в таки случаях?
Решение:
Вы можете использовать запись примерно следующего вида:
<xsl:value-of select="format-number(20 - 10.8, '#.##')" />
Или через переменную:
<xsl:variable name = "my_var" > <xsl:value-of select ="20-10.8" /></xsl:variable> <xsl:value-of select = "format-number($my_var,'#.##')" />
При использование такого вывода, округление будет происходить до нужного порядка.