Как динамически применять модификаторы переменных в Smarty 2.x - PullRequest
0 голосов
/ 04 июня 2010

Я не могу найти решение динамического применения модификаторов в Smarty.

Шаблон - я бы хотел работать таким образом (пример)

{$myVariable|$modifiers}

Php скрипт

$smarty->assign('myVariable', "brumla brumla na drum drum drum");
$smarty->assign('modifiers', "truncate:30|trim");

Или я хотел бы применить модификаторы в php - есть ли какой-нибудь метод для анализа и применения модификаторов в php?

Спасибо за ответы.

1 Ответ

2 голосов
/ 04 июня 2010

Каждый модификатор Smarty - это действительно функция PHP, называемая smarty_modifier_ $ name (). Эта функция может быть вызвана как любая другая.

Итак, в этом примере кода вы просто сделаете:

<?php
$myVariable = "brumla brumla na drum drum drum";
$myVariable = smarty_modifier_truncate($myVariable, 30);
$myVariable = smarty_modifier_trim($myVariable);
$smarty->assign('myVariable', $myVariable);

Конечно, вы можете использовать call_user_func () , чтобы сделать его более динамичным.

...