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

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


limb3:ru:packages:macro:filters

Фильтры шаблонной системы MACRO

Фильтры для обработки текста

clip

Позволяет ограничить вывод длинной строки, указывая количество символов, и символы на границе.

<? $variable = "12345"; ?>
{$variable|clip:3,'...'}
//Результат: "123..."

nl2br

Добавляет рядом с символом \n тег <br/>

<? $variable = "first line \n second line"; ?>
{$variable|nl2br}
//Результат: "first line <br/>
second line"

raw

Выводит значение переменной в неизменной виде. Дело в том, что по-умолчанию, значение переменной обрабатывается htmlspecialchars. Если указан фильтр raw, то такая обработка не производится.

<? $variable = "<>"; ?>
{$variable}{$variable|raw}
//Результат: "&lt;&gt<>"

striptags

Убирает из значения переменной все теги.

<? $variable = "<p>Hello</p>"; ?>
{$variable|striptags}
//Результат: "Hello"

strtolower

Приводит значение переменной в нижний регистр.

<? $variable = "FOO"; ?>
{$variable|strtolower}
//Результат: "foo"

strtoupper

Приводит значение переменной в верхний регистр.

<? $variable = "foo"; ?>
{$variable|strtoupper}
//Результат: "FOO"

trim

Позволяет убирать с конца и с начала строки пробелы или другие символы.

<? $variable = "           foo    "; ?>
{$variable|trim}
//Результат: "foo"

ucfirst

Приводит первую букву значения переменной в верхний регистр.

<? $variable = "foo"; ?>
{$variable|ucfirst}
//Результат: "Foo"

utf8_encode

Преобразует Latin-1 строку в строку UTF-8.

recognize_urls

Находит в тексте ссылки, и обворачивает их в тэг <a>.

<? $string = "foo http://somehost.com/ www.somehost2.com/bar baz"; ?>
{$string|recognize_urls}
//Результат: "foo <a href="http://somehost.com/">http://somehost.com/</a> <a href="http://www.somehost2.com/bar">www.somehost2.com/bar</a> baz"

Фильтры пакета i18n

i18n_capitalize

Переносит в верхний регистр первую букву в строке. Специально для мультибайтовых (уникод) строк.

<?php $string = 'строка'; ?>
{$string|i18n_capitalize}
//Результат: Строка

i18n_clip

Обрезает строку до заданного размера. Специально для мультибайтовых (уникод) строк.

ПараметрыОписание
ДлинаДлина строки в результате
НачалоПозиция, начиная с которой обрезать исходную строку
Строка в концеСтрока, которая добавляется в конец результирующей строки
<?php $string = 'фреймворк для веб-приложений'; ?>
{$string|i18n_clip:4,5,"..."}
//Результат: ворк...

i18n_date

Форматирует даты в соответствии с установленой локалью.

ПараметрыОписаниеНекоторые возможные значения
ЛокальЕсли этот параметр не указан (пустая строка вместо реального значения), тогда в качестве локали будет использована текущая локаль, установленная в lmbI18NToolsen_US
Тип принимаемого значенияВ зависимости от значения фильтруемой переменнойstamp, string
Предустановленный шаблон выводаДля быстрого форматированияdate, short_date
Маска выводаПодстановочные символы для специального форматирования%Y %m %d
<?php $datetime='2002-02-20 10:23:24'; ?>
{$datetime|i18n_date:"en_US", "string", "", "%Y %m %d"}
//Результат: 2002 02 20

Прочие фильтры

date

Позволяет форматировать вывод дат.

<? $date = mktime(0, 0, 0, 5, 2, 2007); ?>
{$variable|date:"Y-m-d"}
//Результат: "2007-05-02"

default

Позволяет указать значение по-умолчанию в выражении для вывода переменной, если переменная не установлена или равна null.

<? $variable = null; ?>
{$variable|default:"null"} {$not_set_variable|default:"not set"}
//Результат: "null not set"

number_format

Позволяет форматировать вывод чисел. Фильтр является аналогом PHP-функции number_format

Фильтр принимает три параметра

  1. число знаков после запятой
  2. разделитель десятичной дроби
  3. разделитель разрядов целочисленной части
<? $number = 4123123; ?>
{$number|number_format:3,'.','`'}
//Результат: "4123123  4`123`123.000"

declension

Добавляет к числу существительное с правильным окончанием.

<? $number_1 = 1; ?>
{$number_1} {$number|declension:"пользователь", "пользователей", "пользователя"}
 
<? $number_10 = 10; ?>
{$number_10} {$number|declension:"пользователь", "пользователей", "пользователя"}
 
<? $number_22 = 22; ?>
{$number_22} {$number|declension:"пользователь", "пользователей", "пользователя"}
 
//Результаты: 
1 пользователь
10 пользователей
22 пользователя

decode_ip

Преобразует числовое представление IP, в его канонический вид.

<? $ip = -1062666387; ?>
{$ip|decode_ip}
//Результат: "192.168.255.109"

Обсуждение

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