Добавьте процент к значению переменной в шаблоне Smarty 2
Я назначил переменную в моем шаблоне Smarty 2.
{assign var="real_count" value="{$store_summary|@count}"}
{$real_count = settype ($real_count, 'integer')}
Моя цель - прибавить 65% к стоимости $real_count
, С данными, с которыми я работаю, у меня есть $real_count
3, поэтому расчетное значение должно быть 4,95 (3 + 1,95).
Я пытаюсь использовать math
тег, однако я явно что-то упустил.
{math equation="x * y" x=$real_count y=0.65 format="%.2f"}
1 ответ
Если вы действительно хотите сделать это в шаблоне Smarty, вы можете решить это следующим образом (немного упрощенно):
{assign var="real_count" value="3"}
{math equation="x + (x * y)" x=$real_count y=0.65 format="%.2f"}
Тем не менее, я бы обычно советовал не делать слишком много математики и другой логики в шаблоне. В большинстве случаев лучше было бы выполнить математику в приложении, а затем отобразить результат в шаблоне. Даже руководство Smarty соглашается со мной:
math
это дорогая функция в производительности из-за использования phpeval()
функция. Делать математику в PHP гораздо эффективнее, поэтому, когда это возможно, делайте математические вычисления в скрипте иassign()
результаты к шаблону. Определенно избегайте повторенияmath
вызовы функций, например, внутриsection
петли.