Полный список модификаторов в Smarty достаточно обширен. Вот основные модификаторы, которые предоставляет Smarty для обработки переменных:
Модификаторы строк
escape
— экранирует строку для HTML, URL, CSS и др.{$var|escape:"html"}
capitalize
— делает первый символ строки заглавным.{$var|capitalize}
cat
— объединяет строку с другой строкой.{$var|cat:" world"}
count_characters
— считает количество символов в строке.{$var|count_characters}
count_words
— считает количество слов в строке.{$var|count_words}
nl2br
— преобразует переводы строк в HTML-теги<br>
.{$var|nl2br}
replace
— заменяет подстроку в строке.{$var|replace:"search":"replace"}
spacify
— добавляет пробелы между символами.{$var|spacify}
string_format
— форматирует строку, как в функцииsprintf
.{$var|string_format:"%0.2f"}
strip_tags
— удаляет HTML и PHP теги из строки.{$var|strip_tags}
truncate
— обрезает строку до указанного числа символов.{$var|truncate:20}
lower
— преобразует строку к нижнему регистру.{$var|lower}
upper
— преобразует строку к верхнему регистру.{$var|upper}
Модификаторы работы с массивами
count
— подсчитывает количество элементов в массиве.{$array|count}
in_array
— проверяет, есть ли элемент в массиве.{$var|in_array:$array}
implode
— объединяет элементы массива в строку.{$array|implode:", "}
join
— аналогичноimplode
.{$array|join:", "}
sort
— сортирует массив.{$array|sort}
Модификаторы для чисел
default
— задает значение по умолчанию, если переменная пуста.{$var|default:"default_value"}
number_format
— форматирует число с учетом дробных частей и разделителей.{$var|number_format:2:",":" "}
indent
— добавляет отступы.{$var|indent:4}
count_paragraphs
— считает количество параграфов (разделенных двумя переводами строк).{$var|count_paragraphs}
Модификаторы работы с датой
date_format
— форматирует дату в соответствии с заданным форматом.{$var|date_format:"%Y-%m-%d"}
strtotime
— преобразует строку в метку времени Unix.{$var|strtotime}
Модификаторы логики
default
— возвращает значение по умолчанию, если переменная не задана.{$var|default:"значение по умолчанию"}
is_array
— проверяет, является ли переменная массивом.{$var|is_array}
is_numeric
— проверяет, является ли переменная числом.{$var|is_numeric}
is_string
— проверяет, является ли переменная строкой.{$var|is_string}
json_encode
— преобразует значение в формат JSON.{$var|json_encode}
json_decode
— декодирует строку JSON.{$var|json_decode}
Прочие модификаторы
strip
— удаляет лишние пробелы.{$var|strip}
var_dump
— выводит структуру переменной.{$var|var_dump}
print_r
— выводит читаемую информацию о переменной.{$var|print_r}
debug_print_var
— выводит отладочную информацию о переменной.{$var|debug_print_var}
wordwrap
— разбивает строку по словам на несколько строк с указанной длиной.{$var|wordwrap:40}
Этот список охватывает большинство часто используемых модификаторов Smarty.