Smarty: округлить до десятичной

Я искал несколько часов и не могу найти решение.

Мне нужен способ округлить цену до верхнего десятичного знака, в моем шаблоне (умный, я не могу редактировать ни один файл php) я пытался использовать функцию округления, но не могу понять, как задать параметр режима "PHP_ROUND_HALF_UP ".

Вот что я получил до сих пор, что делает стандартный раунд

{(($x+7.5+($x-15)*0.3)/15)|round:"1"}

Но он возвращает 3,2 для x = 35 вместо 3,3.

Скажите мне, если вам нужна дополнительная информация.


person Cypc    schedule 18.08.2015    source источник
comment
Вы пытаетесь использовать ceil для десятичных знаков, верно?   -  person sammry    schedule 18.08.2015
comment
@sammry Да, вы можете видеть это так, но AFAIK округляет только до целого числа   -  person Cypc    schedule 19.08.2015


Ответы (1)


Немного сна и вот решение!

Вместо того, чтобы искать функцию, я нашел отличное использование ceil :

{(((($x+7.5+($x-15)*0.3)/15)/0.1)|ceil)*0.1}

Простая математика, благодаря комментариям php.net!

person Cypc    schedule 20.08.2015