Инструменты пользователя

Инструменты сайта


limb3:ru:packages:wact:filters:data_filters:math_filter

Фильтр math

Описание

Фильтр math позволяет выполнять несложные арифметические операции прямо в шаблоне.

Список поддерживаемых операций:

  • сложение с числом, например: {$var|math:'+3'}, то есть получим результат $var+3
  • умножение на число, например: {$var|math:'*3'}
  • деление на число, например: {$var|math:'\3'}
  • геометрические функции, такие как sin, cos, tan, atan, asin, acos.
  • другие математические функции, такие как exp, log, ln, abs, div и т.д.

Подробный список функции см. в классе WactMath.

Если фильтр применен к DBE, а не к константному значению, то в параметрах также можно использовать DBE, например: {$price|math=«*{$amount}»}

Также можно комбинировать операции, например: {$var|math:'\3 + 100'}

Фильтр Math поддерживает любое количество параметров. Все они будут включены в единое математическое выражение, например: {$val|math:«/»,val2,«*100»|number:3}

Синтаксис

{$var|math:"expression1"[,expressionN]}

Параметры

  • expression1 - математическое выражение.
  • expressionN - любое количество параметров, которые также будут добавлены к первоначальному выражению.

Отрабатывать будет все выражение, полученнное сложением всех параметров фильтра.

Пример использования

Рабочие примеры использования math фильтра можно найти в папке limb/wact/examples/filters/data/.

Шаблон math.html

{$"1 + 3"|}
{$var|math:'+3'}
{$var|math:'*4+10'}

Поставим некоторые данные в шаблон:

$template = new WactTemplate('math.html');
$template->set('var', 4);
$template->display();

Получим:

3
7
26

Обсуждение

Ваш комментарий. Вики-синтаксис разрешён:
  _____     __   ____   ___    __ __
 / ___/ __ / /  / __/  / _ \  / //_/
/ /__  / // /  _\ \   / , _/ / ,<   
\___/  \___/  /___/  /_/|_| /_/|_|
 
limb3/ru/packages/wact/filters/data_filters/math_filter.txt · Последние изменения: 2010/11/10 10:02 (внешнее изменение)